From e2fd02814df74f8445aa12289a1c6276b948d4d3 Mon Sep 17 00:00:00 2001 From: peter Date: Mon, 6 Nov 2000 23:13:53 +0000 Subject: [PATCH] * uppercase manglednames --- compiler/hcgdata.pas | 13 ++++++++----- compiler/symdef.pas | 9 ++++++--- compiler/symsym.pas | 13 ++++++++----- 3 files changed, 22 insertions(+), 13 deletions(-) diff --git a/compiler/hcgdata.pas b/compiler/hcgdata.pas index 0d01365823..1f6db07422 100644 --- a/compiler/hcgdata.pas +++ b/compiler/hcgdata.pas @@ -755,8 +755,8 @@ implementation function gintfgetvtbllabelname(_class: pobjectdef; intfindex: integer): string; begin - gintfgetvtbllabelname:='_$$_'+_class^.objname^+'_$$_'+ - _class^.implementedinterfaces^.interfaces(intfindex)^.objname^+'_$$_VTBL'; + gintfgetvtbllabelname:='_$$_'+upper(_class^.objname^)+'_$$_'+ + upper(_class^.implementedinterfaces^.interfaces(intfindex)^.objname^)+'_$$_VTBL'; end; procedure gintfcreatevtbl(_class: pobjectdef; intfindex: integer; rawdata,rawcode: paasmoutput); @@ -773,7 +773,7 @@ implementation count:=implintf^.implproccount(intfindex); for i:=1 to count do begin - tmps:=implintf^.implprocs(intfindex,i)^.mangledname+'_$$_'+curintf^.objname^; + tmps:=implintf^.implprocs(intfindex,i)^.mangledname+'_$$_'+upper(curintf^.objname^); { create wrapper code } cgintfwrapper(rawcode,implintf^.implprocs(intfindex,i),tmps,implintf^.ioffsets(intfindex)^); { create reference } @@ -1046,7 +1046,7 @@ implementation if c^.owner^.name=nil then s1:='' else - s1:=c^.owner^.name^; + s1:=upper(c^.owner^.name^); if c^.objname=nil then s2:='' else @@ -1073,7 +1073,10 @@ implementation end. { $Log$ - Revision 1.11 2000-11-04 17:31:00 florian + Revision 1.12 2000-11-06 23:13:53 peter + * uppercase manglednames + + Revision 1.11 2000/11/04 17:31:00 florian * fixed some problems of previous commit Revision 1.10 2000/11/04 14:25:19 florian diff --git a/compiler/symdef.pas b/compiler/symdef.pas index 9a13f8b1e8..b91d90f8aa 100644 --- a/compiler/symdef.pas +++ b/compiler/symdef.pas @@ -4414,7 +4414,7 @@ Const local_symtable_index : longint = $8001; if owner^.name=nil then s1:='' else - s1:=owner^.name^; + s1:=upper(owner^.name^); if objname=nil then s2:='' else @@ -4430,7 +4430,7 @@ Const local_symtable_index : longint = $8001; if owner^.name=nil then s1:='' else - s1:=owner^.name^; + s1:=upper(owner^.name^); if objname=nil then s2:='' else @@ -5521,7 +5521,10 @@ Const local_symtable_index : longint = $8001; end. { $Log$ - Revision 1.7 2000-11-06 23:11:38 florian + Revision 1.8 2000-11-06 23:13:53 peter + * uppercase manglednames + + Revision 1.7 2000/11/06 23:11:38 florian * writeln debugger uninstalled ;) Revision 1.6 2000/11/06 23:05:52 florian diff --git a/compiler/symsym.pas b/compiler/symsym.pas index 00a8a47e0c..db5b67d4cf 100644 --- a/compiler/symsym.pas +++ b/compiler/symsym.pas @@ -884,7 +884,7 @@ implementation if assigned(owner) then begin if (owner^.symtabletype = objectsymtable) then - obj := owner^.name^+'__'+name; + obj := upper(owner^.name^)+'__'+name; { this code was correct only as long as the local symboltable of the parent had the same name as the function but this is no true anymore !! PM @@ -1393,13 +1393,13 @@ implementation case owner^.symtabletype of staticsymtable : if (cs_create_smart in aktmoduleswitches) then - prefix:='_'+owner^.name^+'$$$_' + prefix:='_'+upper(owner^.name^)+'$$$_' else prefix:='_'; unitsymtable, globalsymtable : prefix:= - 'U_'+owner^.name^+'_'; + 'U_'+upper(owner^.name^)+'_'; else Message(sym_e_invalid_call_tvarsymmangledname); end; @@ -1708,7 +1708,7 @@ implementation (sp_static in symoptions) then begin if (cs_gdb_gsym in aktglobalswitches) then st := 'G'+st else st := 'S'+st; - stabstring := strpnew('"'+owner^.name^+'__'+name+':'+st+ + stabstring := strpnew('"'+upper(owner^.name^)+'__'+name+':'+st+ '",'+ tostr(N_LCSYM)+',0,'+tostr(fileinfo.line)+','+mangledname); end @@ -2464,7 +2464,10 @@ implementation end. { $Log$ - Revision 1.2 2000-11-01 23:04:38 peter + Revision 1.3 2000-11-06 23:13:53 peter + * uppercase manglednames + + Revision 1.2 2000/11/01 23:04:38 peter * tprocdef.fullprocname added for better casesensitve writing of procedures