Re: Prohibit enum <-> int mixup

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 01/31/2011 05:56 PM, Ian Lance Taylor wrote:
Jonathan Wakely<jwakely.gcc@xxxxxxxxx>  writes:

On 31 January 2011 19:16, Ian Lance Taylor wrote:

Using -std=c++0x will cause libstdc++ to build in C++0x mode, which last
time I checked was not strictly ABI compatible with libstdc++ not built
in C++0x mode.  So if you link with a dynamic libstdc++.so, you may get
in trouble in some complex scenarios.

Do you remember the details?  I thought we'd done a good job of not
breaking the ABI, and have avoided making some changes required by
C+0x because they change the ABI.  I'd like to document the potential
problems if you can remember where the incompatibilities are.

http://gcc.gnu.org/PR45093

Well... based on Paolo's reply, that's quite concerning. Does this mean that distros need to provide two compiled versions of libstdc++ and the compiler wrapper will need to select the proper one to link against based on whether --std=c++0x was used or not? This could have major ripple effects as well, as various other C++ libraries (Boost, etc) will have to be compiled in both modes as well.

--
Kevin P. Fleming
Digium, Inc. | Director of Software Technologies
445 Jan Davis Drive NW - Huntsville, AL 35806 - USA
skype: kpfleming | jabber: kfleming@xxxxxxxxxx
Check us out at www.digium.com & www.asterisk.org


[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux