Mangled function type declarations?

M

Marcus Lessard

Why do header files have declarations for functions in them that look like
this:

unsigned long _RTLENTRY _EXPFUNC _beginthread (void (_USERENTRY
*__start)(void *),unsigned __stksize, void *__arg);

When the implementation files declares them like this:
int thread_id;
thread_id = _beginthread(thread_code,4096,(void *)i);

What is the "_RTLENTRY _EXPFUNC" all about and what should I know about it?
My help files (Borland bcc32 ver 5.5) don't have a lot to say about it.

Thanks In Advance!
 
E

Eric Sosman

Marcus said:
Why do header files have declarations for functions in them that look like
this:

unsigned long _RTLENTRY _EXPFUNC _beginthread (void (_USERENTRY
*__start)(void *),unsigned __stksize, void *__arg);

When the implementation files declares them like this:
int thread_id;
thread_id = _beginthread(thread_code,4096,(void *)i);

What is the "_RTLENTRY _EXPFUNC" all about and what should I know about it?
My help files (Borland bcc32 ver 5.5) don't have a lot to say about it.

These declarations use Implementation Magic: they are
mystical incantations that have meaning (one presumes) to
the compiler that's part of the same package as the headers.
We do not know exactly what they mean; they are "private
communications" to the compiler from the authors of the
header.

"Meddle not in the affairs of wizards, for they are
subtle and quick to anger."
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,768
Messages
2,569,574
Members
45,050
Latest member
AngelS122

Latest Threads

Top