1 |
On 10/24/14 7:29 PM, Anthony G. Basile wrote: |
2 |
> So I don't have to keep email the entire item to the list, how about |
3 |
> just adding it as follows: |
4 |
> |
5 |
> "Nor is c++11 code compiled with gcc-4.7 ABI-compatible with c++11 |
6 |
> compiled with 4.8, and vice versa. An example can be see in ref. |
7 |
> [2]" |
8 |
> |
9 |
> Ref. [2] https://bugs.gentoo.org/show_bug.cgi?id=513386 |
10 |
|
11 |
I think this could still be clearer about the user/sysadmin perspective |
12 |
more than a developer perspective, i.e. present this more like "both |
13 |
gcc-4.7 and 4.8 installed with 4.7 being active" than "not |
14 |
ABI-compatible with C++11 compiled with 4.8". |
15 |
|
16 |
Here's my suggested draft: |
17 |
|
18 |
-----%<----- CUT HERE -----%<----- |
19 |
GCC 4.7 introduced the new experimental 2011 ISO C++ standard [1]. |
20 |
|
21 |
Users that wish to try enabling C++11 globally (e.g. using CXXFLAGS) |
22 |
should exercise caution because it is not ABI-compatible with C++98. |
23 |
Packages which are self-contained or do not link against any libraries |
24 |
written in C++ are not affected. Note that some packages like |
25 |
www-client/chromium and net-libs/webkit-gtk among others are already |
26 |
using C++11 features. |
27 |
|
28 |
Even having different versions of gcc installed simultaneously might |
29 |
lead to problems, especially if the active version of gcc is older. |
30 |
Please see [2] for example known bug with webkit-gtk. It is recommended |
31 |
to set the latest installed version of gcc as active; some packages may |
32 |
work when an older version is selected, but GCC upstream provides no |
33 |
guarantees of C++11 ABI stability for code compiled with gcc-4.x and 4.y |
34 |
for any x != y [3]. |
35 |
|
36 |
Ref. |
37 |
[1] http://www.stroustrup.com/C++11FAQ.html |
38 |
[2] https://bugs.gentoo.org/show_bug.cgi?id=513386 |
39 |
[3] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61758 |
40 |
-----%<----- CUT HERE -----%<----- |
41 |
|
42 |
Paweł |