* fixed JVM stack height calculation after calls returning an

implicit pointer tpe

git-svn-id: trunk@48832 -
This commit is contained in:
Jonas Maebe 2021-02-27 19:30:34 +00:00
parent 4c2e0b9ff0
commit ab0531f0ce

View File

@ -2292,6 +2292,10 @@ implementation
{ a constructor doesn't actually return a value in the jvm }
if (tabstractprocdef(pd).proctypeoption=potype_constructor) then
totalremovesize:=paraheight
else if jvmimplicitpointertype(realresdef) then
totalremovesize:=paraheight-1
else if is_void(realresdef) then
totalremovesize:=paraheight
else
{ even a byte takes up a full stackslot -> align size to multiple of 4 }
totalremovesize:=paraheight-(align(realresdef.size,4) shr 2);