Various patches against gmp-4.3.0
Torbjorn Granlund
tg at gmplib.org
Wed May 6 11:35:04 CEST 2009
Marc Glisse <marc.glisse at normalesup.org> writes:
On Wed, 6 May 2009, Torbjorn Granlund wrote:
> > o forgotten_extern_C.difffix for t-locale.cc where an extra extern
> > "C" is needed
> >
> > Why is this needed?
>
> Without the extern "C", the variable "point_string" is subject to C++ name
> mangling: on win32 it becomes "?point_string@@3PADA", leaving an unresolved
> symbol "_point_string".
>
> Well, this is a C++ file, point_string is supposed to be a C++ variable,
> so if your compiler mangles its use but not its declaration, it sounds
> like a serious compiler problem.
Apparently this variable is shared with the C file clocale.c, so I
think it makes sense that there can be problems. Although I am not
sure the standard allows the C++ compiler to mangle the names of
arrays (only functions).
Could an
extern "C"
cause problems for standard conforming compilers?
--
Torbjörn
More information about the gmp-devel
mailing list