Boost logo

Boost :

From: Peter Dimov (pdimov_at_[hidden])
Date: 2005-07-19 06:21:05


Jeremy Maitin-Shepard wrote:
> Rob Stewart <stewart_at_[hidden]> writes:
>
>> From: "Jonathan Turkanis" <technews_at_[hidden]>
>
> [snip]
>
>>> Unfortunately, when compiled as C++, the zlib and libbz2 headers
>>> declare the allocation and deallocation function pointer types as
>>> extern "C", and Compaq (correctly, I think) refuses to let me
>>> assign pointers to static member functions to variables whose type
>>> are declared extern "C".
>
>> The static member functions have C++ language linkage, not C
>> language linkage, so Tru64 is correct.
>
> It seems to me that it is the calling convention that matters, not the
> linkage/name mangling. I don't see what extern "C" applied to a
> function pointer type means. This restriction does not seem right to
> me.

It means a pointer to an extern "C" function. When you call it, the extern
"C" calling convention is used.


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk