Thread overview
Name mangling
Apr 22, 2005
Anon
Apr 22, 2005
David L. Davis
Apr 22, 2005
anon
April 22, 2005
I seem to recall seeing a description of the the name mangling conventions that D uses, but darned if I can find it anywhere?

Example:
Error 42: Symbol Undefined _D6parser5parseFT6config6ConfigZC8bytecode8Bytecode


April 22, 2005
In article <d49lmt$1947$1@digitaldaemon.com>, Anon says...
>
>I seem to recall seeing a description of the the name mangling conventions that D uses, but darned if I can find it anywhere?
>
>Example:
>Error 42: Symbol Undefined _D6parser5parseFT6config6ConfigZC8bytecode8Bytecode
>
>

Anon, take a look at C:\dmd\src\phobos\std\format.d which has the following:

# enum Mangle : char
# {
#     Tvoid     = 'v',
#     Tbit      = 'b',
#     Tbyte     = 'g',
#     Tubyte    = 'h',
#     Tshort    = 's',
#     Tushort   = 't',
#     Tint      = 'i',
#     Tuint     = 'k',
#     Tlong     = 'l',
#     Tulong    = 'm',
#     Tfloat    = 'f',
#     Tdouble   = 'd',
#     Treal     = 'e',
#
#     Tifloat   = 'o',
#     Tidouble  = 'p',
#     Tireal    = 'j',
#     Tcfloat   = 'q',
#     Tcdouble  = 'r',
#     Tcreal    = 'c',
#
#     Tchar     = 'a',
#     Twchar    = 'u',
#     Tdchar    = 'w',
#
#     Tarray    = 'A',
#     Tsarray   = 'G',
#     Taarray   = 'H',
#     Tpointer  = 'P',
#     Tfunction = 'F',
#     Tident    = 'I',
#     Tclass    = 'C',
#     Tstruct   = 'S',
#     Tenum     = 'E',
#     Ttypedef  = 'T',
#     Tdelegate = 'D',
# }

Also you might want to read something I wrote entitled: "Demystifying D DLLs - Part I : Exporting Free Functions" at http://spottedtiger.tripod.com/D_Language/D_Demystifying_D_DLLs1_XP.html.

Well, I hope you find this information helpful,
David L.

-------------------------------------------------------------------
"Dare to reach for the Stars...Dare to Dream, Build, and Achieve!"
-------------------------------------------------------------------

MKoD: http://spottedtiger.tripod.com/D_Language/D_Main_XP.html
April 22, 2005
In article <d49pgr$1c84$1@digitaldaemon.com>, David L. Davis says...
>
>In article <d49lmt$1947$1@digitaldaemon.com>, Anon says...
>>
>>I seem to recall seeing a description of the the name mangling conventions that D uses, but darned if I can find it anywhere?
>>
>>Example:
>>Error 42: Symbol Undefined _D6parser5parseFT6config6ConfigZC8bytecode8Bytecode
>>
>>
>
>Anon, take a look at C:\dmd\src\phobos\std\format.d which has the following:

Perfect, many thanks. I think I had most of it worked out, but the Z had me going:)

anon.
>
># enum Mangle : char
># {
>#     Tvoid     = 'v',
>#     Tbit      = 'b',
>#     Tbyte     = 'g',
>#     Tubyte    = 'h',
>#     Tshort    = 's',
>#     Tushort   = 't',
>#     Tint      = 'i',
>#     Tuint     = 'k',
>#     Tlong     = 'l',
>#     Tulong    = 'm',
>#     Tfloat    = 'f',
>#     Tdouble   = 'd',
>#     Treal     = 'e',
>#
>#     Tifloat   = 'o',
>#     Tidouble  = 'p',
>#     Tireal    = 'j',
>#     Tcfloat   = 'q',
>#     Tcdouble  = 'r',
>#     Tcreal    = 'c',
>#
>#     Tchar     = 'a',
>#     Twchar    = 'u',
>#     Tdchar    = 'w',
>#
>#     Tarray    = 'A',
>#     Tsarray   = 'G',
>#     Taarray   = 'H',
>#     Tpointer  = 'P',
>#     Tfunction = 'F',
>#     Tident    = 'I',
>#     Tclass    = 'C',
>#     Tstruct   = 'S',
>#     Tenum     = 'E',
>#     Ttypedef  = 'T',
>#     Tdelegate = 'D',
># }
>
>Also you might want to read something I wrote entitled: "Demystifying D DLLs - Part I : Exporting Free Functions" at http://spottedtiger.tripod.com/D_Language/D_Demystifying_D_DLLs1_XP.html.
>
>Well, I hope you find this information helpful,
>David L.
>
>-------------------------------------------------------------------
>"Dare to reach for the Stars...Dare to Dream, Build, and Achieve!"
>-------------------------------------------------------------------
>
>MKoD: http://spottedtiger.tripod.com/D_Language/D_Main_XP.html