Browse Source

* fixed tw3402

git-svn-id: trunk@907 -
Jonas Maebe 20 years ago
parent
commit
f1d3ed5225
1 changed files with 3 additions and 1 deletions
  1. 3 1
      compiler/powerpc/nppcld.pas

+ 3 - 1
compiler/powerpc/nppcld.pas

@@ -40,6 +40,7 @@ unit nppcld;
     uses
     uses
       verbose,
       verbose,
       systems,
       systems,
+      globtype,globals,
       cpubase,
       cpubase,
       cgutils,cgobj,
       cgutils,cgobj,
       aasmbase,aasmtai,
       aasmbase,aasmtai,
@@ -93,7 +94,8 @@ unit nppcld;
             begin
             begin
               if ([vo_is_dll_var,vo_is_external] * tglobalvarsym(symtableentry).varoptions <> []) or
               if ([vo_is_dll_var,vo_is_external] * tglobalvarsym(symtableentry).varoptions <> []) or
                  ((tglobalvarsym(symtableentry).owner.symtabletype in [staticsymtable,globalsymtable]) and
                  ((tglobalvarsym(symtableentry).owner.symtabletype in [staticsymtable,globalsymtable]) and
-                  not(tglobalvarsym(symtableentry).owner.iscurrentunit)) then
+                  (not(tglobalvarsym(symtableentry).owner.iscurrentunit) or
+                   (cs_create_pic in aktmoduleswitches))) then
                 begin
                 begin
                   l:=objectlibrary.getasmsymbol('L'+tglobalvarsym(symtableentry).mangledname+'$non_lazy_ptr');
                   l:=objectlibrary.getasmsymbol('L'+tglobalvarsym(symtableentry).mangledname+'$non_lazy_ptr');
                   if not(assigned(l)) then
                   if not(assigned(l)) then