2
0
Эх сурвалжийг харах

* the type of FieldOffset in the TFieldInfo rtti structure changed to SizeUInt,
because it represents an offset _within_ a structure

git-svn-id: trunk@34627 -

nickysn 8 жил өмнө
parent
commit
5e7ba4a893

+ 2 - 2
compiler/ncgvmt.pas

@@ -675,7 +675,7 @@ implementation
                       packed
                      $endif FPC_REQUIRES_PROPER_ALIGNMENT
                       record
-                        FieldOffset: PtrUInt;
+                        FieldOffset: SizeUInt;
                         ClassTypeIndex: Word;
                         Name: ShortString;
                       end;
@@ -683,7 +683,7 @@ implementation
                     datatcb.begin_anonymous_record('$fpc_intern_fieldinfo_'+tostr(length(tfieldvarsym(sym).realname)),packrecords,1,
                       targetinfos[target_info.system]^.alignment.recordalignmin,
                       targetinfos[target_info.system]^.alignment.maxCrecordalign);
-                    datatcb.emit_tai(Tai_const.Create_pint(tfieldvarsym(sym).fieldoffset),ptruinttype);
+                    datatcb.emit_tai(Tai_const.Create_sizeint(tfieldvarsym(sym).fieldoffset),sizeuinttype);
                     classindex:=classtablelist.IndexOf(tfieldvarsym(sym).vardef);
                     if classindex=-1 then
                       internalerror(200611033);

+ 1 - 1
rtl/inc/objpas.inc

@@ -496,7 +496,7 @@
            packed
 {$endif FPC_REQUIRES_PROPER_ALIGNMENT}
            record
-             FieldOffset: PtrUInt;
+             FieldOffset: SizeUInt;
              ClassTypeIndex: Word;
              Name: ShortString;
            end;