Bladeren bron

* only don't insert passing alignment immediately for anonymous records
rather than for any anonymous aggregate, since for arrays we do know
the alignment even if we don't know the element count (because it only
depends on the elementdef, which is/will be set immediately)

git-svn-id: trunk@34390 -

Jonas Maebe 9 jaren geleden
bovenliggende
commit
a7c893064a
1 gewijzigde bestanden met toevoegingen van 3 en 1 verwijderingen
  1. 3 1
      compiler/aasmcnst.pas

+ 3 - 1
compiler/aasmcnst.pas

@@ -1367,7 +1367,9 @@ implementation
        { if we're starting an anonymous record, we can't align it yet because
          the alignment depends on the fields that will be added -> we'll do
          it at the end }
-       else if not anonymous then
+       else if not anonymous or
+          ((def.typ<>recorddef) and
+           not is_object(def)) then
          begin
            { add padding if necessary, and update the current field/offset }
            info:=curagginfo;