Forráskód Böngészése

* always immediately reset isdbgwritten for syms in the parasymtable,
because they have to be written multiple times in case the procdef
is also written multiple times (such as with DWARF on
tf_dwarf_only_local_labels systems)

git-svn-id: trunk@14214 -

Jonas Maebe 15 éve
szülő
commit
671f8a1d30
1 módosított fájl, 8 hozzáadás és 3 törlés
  1. 8 3
      compiler/dbgbase.pas

+ 8 - 3
compiler/dbgbase.pas

@@ -426,9 +426,14 @@ implementation
         for i:=0 to paras.Count-1 do
           begin
             sym:=tsym(paras[i]);
-            if (sym.visibility<>vis_hidden) and
-               (not sym.isdbgwritten) then
-              appendsym(list,sym);
+            if (sym.visibility<>vis_hidden) then
+              begin
+                appendsym(list,sym);
+                { if we ever write this procdef again for some reason (this
+                  can happen with DWARF), then we want to write all the
+                  parasyms again as well. }
+                sym.isdbgwritten:=false;
+              end;
           end;
       end;