فهرست منبع

* 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 16 سال پیش
والد
کامیت
671f8a1d30
1فایلهای تغییر یافته به همراه8 افزوده شده و 3 حذف شده
  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;