Author belopolsky
Recipients belopolsky, lemburg
Date 2009-01-03.03:38:09
SpamBayes Score 0.000232751
Marked as misclassified No
Message-id <d38f5330901021938q43239b4fw349ac09d4e4bee47@mail.gmail.com>
In-reply-to <1230911682.85.0.598113499033.issue4805@psf.upfronthosting.co.za>
Content
On Fri, Jan 2, 2009 at 10:54 AM, Marc-Andre Lemburg
<report@bugs.python.org> wrote:
>
> Marc-Andre Lemburg <mal@egenix.com> added the comment:
>
> Also note that by removing the extern "C" declarations, you not only
> change the exported symbol names of functions, but also those of
> exported globals.
>
What are " exported globals" other than "exported symbol names of
functions"?  AFAIK, C++ does not mangle non-function symbols.

> Those would also have to get declared in the header files, to prevent
> their names from being mangled (causing the exported C API to change).

I believe .c files should only contain static functions and functions
that are declared in an included header file.  If a function that is
not advertised in a header, it is not part of API and it is a fair
game to mangle it.  The only exception is the module init functions
that are part of the ABI rather than API.
History
Date User Action Args
2009-01-03 03:38:10belopolskysetrecipients: + belopolsky, lemburg
2009-01-03 03:38:09belopolskylinkissue4805 messages
2009-01-03 03:38:09belopolskycreate