浏览代码

* in the nasm writer only declare labels as global if they have labsym.bind=AB_GLOBAL; this fixes compilation of i8086-msdos programs that use multiple units

git-svn-id: trunk@24529 -
nickysn 12 年之前
父节点
当前提交
b9084a22ca
共有 1 个文件被更改,包括 1 次插入1 次删除
  1. 1 1
      compiler/x86/agx86nsm.pas

+ 1 - 1
compiler/x86/agx86nsm.pas

@@ -857,7 +857,7 @@ interface
              begin
              begin
                if tai_label(hp).labsym.is_used then
                if tai_label(hp).labsym.is_used then
                  begin
                  begin
-                   if SmartAsm then
+                   if SmartAsm and (tai_label(hp).labsym.bind=AB_GLOBAL) then
                      begin
                      begin
                        AsmWrite(#9'GLOBAL ');
                        AsmWrite(#9'GLOBAL ');
                        AsmWriteLn(tai_label(hp).labsym.name);
                        AsmWriteLn(tai_label(hp).labsym.name);