C++11 enabling in F22?
mskalick at redhat.com
Mon Oct 26 12:10:52 UTC 2015
On Mon, 2015-10-26 at 11:29 +0000, Tom Hughes wrote:
> On 26/10/15 11:23, Peter Robinson wrote:
> > On Mon, Oct 26, 2015 at 11:13 AM, Marek Skalický <mskalick at redhat.com> wrote:
> >> Hello everyone,
> >> I would like to ask what do you think about enabling c++11 in library in
> >> F22? Is it permitted by Fedora guidelines?
> >> I am asking because of this bug -
> >> https://bugzilla.redhat.com/show_bug.cgi?id=1274307 . And I want to know
> >> the opinion of someone else, to decide.
> > It was explicitly not enabled in F-22 because it's not backwards
> > compatible and required a mass rebuild for all c++ applications. It's
> > enabled by default, and we had a mass rebuild as a result, in Fedora
> > 23. As a result of the impact we won't be making such changes for a
> > release that is long GA.
> You're confusing two different things, though without knowing what that
> configure patch actually does we can't know what the answer is here.
> There is, as far as I know, no problem using -std=c++11 in F22 or any
> other version of Fedora, it's just that the result might not be fully
> standards compliant.
> Specifically in F22 there are two minor changes which require a change
> to the library ABI and as F22 was built with the old ABI you won't get
> those changes. Neither should affect whether code compiles and works though.
> So the only thing you must not do in F22 is to set the define that
> selects the new ABI but you would probably find out quite quickly as you
> did as you would fail to link if you used any other C++ libraries that
> had been built with the old ABI.
> Which is why I say we need to know what the configure flag does - my
> guess is that it just sets -std=c++11 which is fine. If it also sets the
> define to select the new ABI then that might be a problem.
Yes it only set -std=c++11. However there could be some problem with
linking application with -std=c++1 to driver library built without
-std=c++11 - upstream bug https://jira.mongodb.org/browse/CXX-458
F22 is not too old to thinks like this? (to force dependent application
Or is the mentioned bug only problem of different ABIs and without
changing value of _GLIBCXX_USE_CXX11_ABI there couldn't be any problem?
> Tom Hughes (tom at compton.nu)
More information about the devel