浏览代码

* Relocating common symbols needs adjusting by symbol size only on DJCOFF targets, not on PECOFF ones.

git-svn-id: trunk@22068 -
sergei 13 年之前
父节点
当前提交
45d27ef82e
共有 1 个文件被更改,包括 4 次插入1 次删除
  1. 4 1
      compiler/ogcoff.pas

+ 4 - 1
compiler/ogcoff.pas

@@ -934,7 +934,10 @@ const pemagic : array[0..3] of byte = (
                 RELOC_ABSOLUTE :
                 RELOC_ABSOLUTE :
                   begin
                   begin
                     if oso_common in relocsec.secoptions then
                     if oso_common in relocsec.secoptions then
-                      dec(address,objreloc.orgsize)
+                      begin
+                        if (not win32) then
+                          dec(address,objreloc.orgsize);
+                      end
                     else
                     else
                       begin
                       begin
                         { fixup address when the symbol was known in defined object }
                         { fixup address when the symbol was known in defined object }