diff --git a/.gitattributes b/.gitattributes index e0bdb1dcbf..e83b5804fe 100644 --- a/.gitattributes +++ b/.gitattributes @@ -12601,6 +12601,7 @@ tests/webtbs/tw21551.pp svneol=native#text/plain tests/webtbs/tw2158.pp svneol=native#text/plain tests/webtbs/tw2159.pp svneol=native#text/plain tests/webtbs/tw21592.pp svneol=native#text/pascal +tests/webtbs/tw21592b.pp svneol=native#text/pascal tests/webtbs/tw21593.pp svneol=native#text/pascal tests/webtbs/tw2163.pp svneol=native#text/plain tests/webtbs/tw21654.pp svneol=native#text/pascal diff --git a/compiler/ninl.pas b/compiler/ninl.pas index fb28463dcd..689b3e20d4 100644 --- a/compiler/ninl.pas +++ b/compiler/ninl.pas @@ -2474,7 +2474,8 @@ implementation begin { the constant evaluation of in_sizeof_x happens in pexpr where possible } set_varstate(left,vs_read,[]); - if paramanager.push_high_param(vs_value,left.resultdef,current_procinfo.procdef.proccalloption) then + if (left.resultdef.typ<>undefineddef) and + paramanager.push_high_param(vs_value,left.resultdef,current_procinfo.procdef.proccalloption) then begin hightree:=load_high_value_node(tparavarsym(tloadnode(left).symtableentry)); if assigned(hightree) then diff --git a/tests/webtbs/tw21592b.pp b/tests/webtbs/tw21592b.pp new file mode 100644 index 0000000000..cc98265f64 --- /dev/null +++ b/tests/webtbs/tw21592b.pp @@ -0,0 +1,11 @@ +unit tw21592b; + +{$MODE DELPHI} + +interface + +type TBytesOverlay = array [0..SizeOf(T) - 1] of Byte; + +implementation + +end.