Pelles C forum

Pelles C => Bug reports => Topic started by: Vortex on April 12, 2024, 09:17:57 PM

Title: Extra leading underscore issue
Post by: Vortex on April 12, 2024, 09:17:57 PM
Hello,

Assembling the following code and examining the symbols in the object file :

calc PROTO :QWORD,:QWORD,:QWORD,:QWORD,:QWORD,:QWORD

GetResult PROTO :QWORD,:QWORD

ALIAS <calc>=<?calc@formula@@QEAAHHHHHH@Z>
ALIAS <GetResult>=<?GetResult@formula@@QEAAXH@Z>


\PellesC\bin\podump.exe /symbols Test.obj

Dump of test.obj

File type: OBJ

SYMBOL TABLE
0000 00000000 UNDEF  notype      external     | _?calc@formula@@QEAAHHHHHH@Z
0001 00000000 UNDEF  notype      weak external | calc
     alternate index 0000, search alias
0003 00000000 UNDEF  notype      external     | _?GetResult@formula@@QEAAXH@Z
0004 00000000 UNDEF  notype      weak external | GetResult
     alternate index 0003, search alias


The two symbols should not be prepended with an underscore according to the fastcall calling convention.
Title: Re: Extra leading underscore issue
Post by: Vortex on April 06, 2025, 11:27:55 AM
Tedted with Poasm V13.00.1 :

ExitApplication PROTO :QWORD
ExitProcess PROTO :QWORD

ALIAS "ExitApplication" = "ExitProcess"

.code

start PROC PARMAREA=4*SIZEOF QWORD

invoke ExitApplication,0

start ENDP

END start

Poasm reports :

error: Redefinition of symbol 'ExitApplication'.
Title: Re: Extra leading underscore issue
Post by: Pelle on April 06, 2025, 12:00:12 PM
I will look at it...