diff --git a/src/parseh.cpp b/src/parseh.cpp index 78db01f2ce..8a15363084 100644 --- a/src/parseh.cpp +++ b/src/parseh.cpp @@ -481,7 +481,7 @@ static TypeTableEntry *resolve_type_with_table(Context *c, const Type *ty, const case Type::Decayed: { const DecayedType *decayed_ty = static_cast(ty); - return resolve_qual_type(c, decayed_ty->getOriginalType(), decl); + return resolve_qual_type(c, decayed_ty->getDecayedType(), decl); } case Type::BlockPointer: case Type::LValueReference: diff --git a/test/run_tests.cpp b/test/run_tests.cpp index a818bbc4f0..c622a265e0 100644 --- a/test/run_tests.cpp +++ b/test/run_tests.cpp @@ -1969,7 +1969,7 @@ pub const Bar = enum_Bar;)OUTPUT"); add_parseh_case("constant size array", R"SOURCE( void func(int array[20]); - )SOURCE", 1, R"OUTPUT(pub extern fn func(array: [20]c_int);)OUTPUT"); + )SOURCE", 1, "pub extern fn func(array: ?&c_int);"); add_parseh_case("self referential struct with function pointer", R"SOURCE(