[M3devel] could someone add __stdcall name mangling to m3cc please?

Jay jayk123 at hotmail.com
Thu Jan 10 20:55:15 CET 2008


> CC: m3devel at elegosoft.com
> From: hosking at cs.purdue.edu
> 
> On Jan 10, 2008, at 7:42 AM, Jay wrote:
> 
> > PM3 appears to ignore call_conv.
> > Perhaps its NT386GNU uses usermode threads via cygwin1.dll and has  
> > no gui support, such as to not import any __stdcall functions???
> 
> Probably, yes.  CM3 were the ones who added gui support.  Anyway, I  
> think it is simply a matter of adding the appropriate attribute to  
> the function decls in the gcc backend.  I believe that it supports  
> cdecl and stdcall.  Are these all we need to specify?

Digital added GUI support, but that doesn't necessary matter.
PM3 might have dropped or broken it -- well, at least the NT386GNU target, not NT386.
Good point, attributes, not name.
__cdecl and __stdcall will suffice, yes.
There is __fastcall but the M3 front end doesn't support it.
The M3 front end only supports __cdecl and __stdcall, and various synonyms thereof,
but it just resolves to 0 and 1, I think 0 is __cdecl.
Look for "NTCall" in the source, or "stdcall" on the front end.
It's pretty clear.

If I knew how to easily "build things properly" "but get a preprocessed file",
that is, add -E to the proper place, I would have preprocessed parse.c
to get an idea how to...well...add the stuff to the name, which isn't the right fix anyway.
As two where the char* or char[] is is buried in macros..
(e.g. CodeWarrior implements this well, right click a file and say "preprocess"
or "disassemble")

 - Jay

_________________________________________________________________
Put your friends on the big screen with Windows Vista® + Windows Live™.
http://www.microsoft.com/windows/shop/specialoffers.mspx?ocid=TXT_TAGLM_CPC_MediaCtr_bigscreen_012008
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://m3lists.elegosoft.com/pipermail/m3devel/attachments/20080110/aba09804/attachment-0002.html>


More information about the M3devel mailing list