Sfoglia il codice sorgente

* use sizesinttype instead of ptrsinttype for the $length and $mlength fields,
when creating the $pvmt system type

git-svn-id: trunk@34650 -

nickysn 9 anni fa
parent
commit
5501061115
1 ha cambiato i file con 2 aggiunte e 2 eliminazioni
  1. 2 2
      compiler/psystem.pas

+ 2 - 2
compiler/psystem.pas

@@ -543,8 +543,8 @@ implementation
               type is not available. The rtti for pvmt will be written implicitly
               type is not available. The rtti for pvmt will be written implicitly
               by thev tblarray below }
               by thev tblarray below }
             systemunit.insert(ctypesym.create('$pvmt',pvmttype,true));
             systemunit.insert(ctypesym.create('$pvmt',pvmttype,true));
-            addfield(hrecst,cfieldvarsym.create('$length',vs_value,ptrsinttype,[],true));
-            addfield(hrecst,cfieldvarsym.create('$mlength',vs_value,ptrsinttype,[],true));
+            addfield(hrecst,cfieldvarsym.create('$length',vs_value,sizesinttype,[],true));
+            addfield(hrecst,cfieldvarsym.create('$mlength',vs_value,sizesinttype,[],true));
             addfield(hrecst,cfieldvarsym.create('$parent',vs_value,pvmttype,[],true));
             addfield(hrecst,cfieldvarsym.create('$parent',vs_value,pvmttype,[],true));
             { it seems vmttype is used both for TP objects and Delphi classes,
             { it seems vmttype is used both for TP objects and Delphi classes,
               so the next entry could either be the first virtual method (vm1)
               so the next entry could either be the first virtual method (vm1)