Răsfoiți Sursa

Merged revisions 10876-10877 via svnmerge from
http://svn.freepascal.org/svn/fpc/trunk

........
r10876 | florian | 2008-05-04 09:43:24 +0200 (So, 04 Mai 2008) | 2 lines

* don't generate a hidden parameter for static class methods, resolves #10998
........
r10877 | jonas | 2008-05-04 14:45:10 +0200 (So, 04 Mai 2008) | 2 lines

+ extra test for #10998
........

git-svn-id: branches/fixes_2_2@10923 -

florian 17 ani în urmă
părinte
comite
0822153acc
1 a modificat fișierele cu 5 adăugiri și 0 ștergeri
  1. 5 0
      compiler/pdecsub.pas

+ 5 - 0
compiler/pdecsub.pas

@@ -165,6 +165,11 @@ implementation
                 assigned(tprocdef(pd)._class) and
                 (pd.parast.symtablelevel=normal_function_level) then
               begin
+                { static class methods have no hidden self/vmt pointer }
+                if (po_staticmethod in pd.procoptions) and
+                   (po_classmethod in pd.procoptions) then
+                   exit;
+
                 storepos:=current_tokenpos;
                 current_tokenpos:=tprocdef(pd).fileinfo;