Sfoglia il codice sorgente

compiler: don't show notes for symbols which are created by static class fields, update ppudump and ppu version

git-svn-id: trunk@14608 -
paul 15 anni fa
parent
commit
c9987c296e
5 ha cambiato i file con 15 aggiunte e 6 eliminazioni
  1. 1 1
      compiler/pdecvar.pas
  2. 1 1
      compiler/ppu.pas
  3. 3 1
      compiler/symconst.pas
  4. 2 1
      compiler/symtable.pas
  5. 8 2
      compiler/utils/ppudump.pp

+ 1 - 1
compiler/pdecvar.pas

@@ -1485,7 +1485,7 @@ implementation
                        fieldvs:=tfieldvarsym(sc[i]);
                        include(fieldvs.symoptions,sp_static);
                        { generate the symbol which reserves the space }
-                       hstaticvs:=tstaticvarsym.create('$_static_'+lower(symtablestack.top.name^)+'_'+fieldvs.name,vs_value,hdef,[]);
+                       hstaticvs:=tstaticvarsym.create('$_static_'+lower(symtablestack.top.name^)+'_'+fieldvs.name,vs_value,hdef,[vo_is_internal]);
                        recst.defowner.owner.insert(hstaticvs);
                        insertbssdata(hstaticvs);
                        { generate the symbol for the access }

+ 1 - 1
compiler/ppu.pas

@@ -43,7 +43,7 @@ type
 {$endif Test_Double_checksum}
 
 const
-  CurrentPPUVersion = 110;
+  CurrentPPUVersion = 111;
 
 { buffer sizes }
   maxentrysize = 1024;

+ 3 - 1
compiler/symconst.pas

@@ -397,7 +397,9 @@ type
     { Objective-C message selector parameter }
     vo_is_msgsel,
     { first field of a record or variant part of a record }
-    vo_is_first_field
+    vo_is_first_field,
+    { symbols which inserts compiler for special use. they don't generate notes }
+    vo_is_internal
   );
   tvaroptions=set of tvaroption;
 

+ 2 - 1
compiler/symtable.pas

@@ -575,7 +575,8 @@ implementation
             { also don't count the value parameters which have local copies }
             { also don't claim for high param of open parameters (PM) }
             if (Errorcount<>0) or
-               ([vo_is_hidden_para,vo_is_funcret] * tabstractvarsym(sym).varoptions = [vo_is_hidden_para]) then
+               ([vo_is_hidden_para,vo_is_funcret] * tabstractvarsym(sym).varoptions = [vo_is_hidden_para]) or
+               (vo_is_internal in tabstractvarsym(sym).varoptions) then
               exit;
             if (tstoredsym(sym).refs=0) then
               begin

+ 8 - 2
compiler/utils/ppudump.pp

@@ -1299,7 +1299,10 @@ type
     vo_is_range_check,
     vo_is_overflow_check,
     vo_is_typinfo_para,
-    vo_is_weak_external
+    vo_is_weak_external,
+    vo_is_msgsel,
+    vo_is_first_field,
+    vo_is_internal
   );
   tvaroptions=set of tvaroption;
   { register variable }
@@ -1340,7 +1343,10 @@ const
      (mask:vo_is_range_check;  str:'RangeCheckSwitch'),
      (mask:vo_is_overflow_check; str:'OverflowCheckSwitch'),
      (mask:vo_is_typinfo_para; str:'TypeInfo'),
-     (mask:vo_is_weak_external;str:'WeakExternal')
+     (mask:vo_is_msgsel;str:'MsgSel'),
+     (mask:vo_is_weak_external;str:'WeakExternal'),
+     (mask:vo_is_first_field;str:'IsFirstField'),
+     (mask:vo_is_internal;str:'IsInternal')
   );
 var
   i : longint;