瀏覽代碼

* fixed calling of external procedures if the first time they are used in a
compilation unit is in an expression which merely takes their address

git-svn-id: trunk@439 -

Jonas Maebe 20 年之前
父節點
當前提交
7356f83713
共有 1 個文件被更改,包括 6 次插入3 次删除
  1. 6 3
      compiler/powerpc/cgcpu.pas

+ 6 - 3
compiler/powerpc/cgcpu.pas

@@ -352,12 +352,15 @@ const
         l1: tasmsymbol;
       begin
         { function declared in the current unit? }
-        result := objectlibrary.getasmsymbol(s);
+        { doesn't work correctly, because this will also return a hit if we }
+        { previously took the address of an external procedure. It doesn't  }
+        { really matter, the linker will remove all unnecessary stubs.      }
+{        result := objectlibrary.getasmsymbol(s);
         if not(assigned(result)) then
-          begin
+          begin }
             stubname := 'L'+s+'$stub';
             result := objectlibrary.getasmsymbol(stubname);
-          end;
+{          end; }
         if assigned(result) then
           exit;