On 09/27/2012 12:48 AM, Amos Jeffries wrote:
> On 26/09/2012 4:44 a.m., Kinkie wrote:
>> Hi all,
>>    this new patch addresses the concerns that were raised.
>> It stops short of removing typedefs.h (but structs.h is now gone).
>>
>> It doesn't break the build on the farm; it is in my opinion reasonably
>> complete and it is for me a merge-candidate.
>>
> 
> 
> I see a lot of externs being removed in .h files.  All fine and well for
> statically linked .o files. But when these files are shuffled into
> librares the ABI linking operates a little different and is known to
> strip away symbol references for "internal" objects (ie those with no
> explicit extern marking). Please be wary of that.

Are you sure that such stripping happens in C++ context (rather than
some old C context)? AFAIK, C++ function declarations have external C++
linking scope by default, so they all should have "extern" marking from
the linker point of view.

We may need 'extern "C"' (rather than 'extern "C++"' or default) marks
for functions that are shared with some C code but that is a different
story.


Thank you,

Alex.

Reply via email to