* fixed debug info generation for static symbols + IE in case it cannot

be generated (rather than an undefined function result)

git-svn-id: trunk@6187 -
This commit is contained in:
Jonas Maebe 2007-01-25 17:07:26 +00:00
parent d3ea2fa9e3
commit e541f19ef5

View File

@ -1132,13 +1132,19 @@ implementation
function tfieldvarsym.mangledname:string;
var
srsym : tsym;
srsymtable : TSymtable;
srsymtable : tsymtable;
begin
if sp_static in symoptions then
begin
searchsym(lower(owner.name^)+'_'+name,srsym,srsymtable);
if assigned(srsym) then
result:=srsym.mangledname;
if searchsym(lower(owner.name^)+'_'+name,srsym,srsymtable) then
result:=srsym.mangledname
{ when generating the debug info for the module in which the }
{ symbol is defined, the localsymtable of that module is }
{ already popped from the symtablestack }
else if searchsym_in_module(current_module,lower(owner.name^)+'_'+name,srsym,srsymtable) then
result:=srsym.mangledname
else
internalerror(2007012501);
end
else
result:=inherited mangledname;