Ver Fonte

* initialize global and static symtables using the real module name (it will be uppercased for the name anyway)

Sven/Sarah Barth há 1 semana atrás
pai
commit
c44c572d02
2 ficheiros alterados com 5 adições e 5 exclusões
  1. 2 2
      compiler/fppu.pas
  2. 3 3
      compiler/pmodules.pas

+ 2 - 2
compiler/fppu.pas

@@ -2030,7 +2030,7 @@ var
          internalerror(200208187);
         deflist.count:=ppufile.header.deflistsize;
         symlist.count:=ppufile.header.symlistsize;
-        globalsymtable:=tglobalsymtable.create(modulename^,moduleid);
+        globalsymtable:=tglobalsymtable.create(realmodulename^,moduleid);
         tstoredsymtable(globalsymtable).ppuload(ppufile);
 
         if ppufile.readentry<>ibexportedmacros then
@@ -2082,7 +2082,7 @@ var
         { load implementation symtable }
         if mf_local_symtable in moduleflags then
           begin
-            localsymtable:=tstaticsymtable.create(modulename^,moduleid);
+            localsymtable:=tstaticsymtable.create(realmodulename^,moduleid);
             tstaticsymtable(localsymtable).ppuload(ppufile);
           end;
 

+ 3 - 3
compiler/pmodules.pas

@@ -1317,7 +1317,7 @@ type
         parse_only:=false;
 
         { create static symbol table }
-        curr.localsymtable:=tstaticsymtable.create(curr.modulename^,curr.moduleid);
+        curr.localsymtable:=tstaticsymtable.create(curr.realmodulename^,curr.moduleid);
 
 
         { Insert _GLOBAL_OFFSET_TABLE_ symbol if system uses it }
@@ -1976,7 +1976,7 @@ type
 
          { insert after the unit symbol tables the static symbol table }
          { of the program                                             }
-         curr.localsymtable:=tstaticsymtable.create(curr.modulename^,curr.moduleid);
+         curr.localsymtable:=tstaticsymtable.create(curr.realmodulename^,curr.moduleid);
 
          { ensure that no packages are picked up from the options }
          packagelist.clear;
@@ -2945,7 +2945,7 @@ type
 
          { insert after the unit symbol tables the static symbol table
            of the program                                              }
-         curr.localsymtable:=tstaticsymtable.create(curr.modulename^,curr.moduleid);
+         curr.localsymtable:=tstaticsymtable.create(curr.realmodulename^,curr.moduleid);
 
          { load system unit }
          load_ok:=loadsystemunit(curr);