From: Guilherme Amadio <amadio@gentoo.org>
To: gentoo-dev@lists.gentoo.org
Subject: Re: [gentoo-dev] [RFC] C++ standard in ebuilds
Date: Tue, 18 Sep 2018 16:26:08 +0200 [thread overview]
Message-ID: <20180918142607.GA25320@gentoo.org> (raw)
In-Reply-To: <812A3F5E-AA6A-4FFA-BF70-EE8B6565A6DF@gentoo.org>
On Tue, Sep 18, 2018 at 08:46:46AM -0400, Richard Yao wrote:
>
> > On Sep 17, 2018, at 12:40 PM, Vadim A. Misbakh-Soloviov <gentoo@mva.name> wrote:
> >
> > I'd prefer to wait another replies on the list for the main theme of this e-
> > mail, but this problem also affects C (so, as **c**flags and C standards), so
> > solution shoudn't be c++ specific, imho.
> You would think that, but the C standard version does not effect ABI compatibility. We had a very long discussion about this in OpenZFS because the other platforms were using C99 while we had backported everything to C89 on Linux because of the Linux kernel. No one could find a single example of ABI breakage caused by mixing and matching C89 and C99 (C99 LKM and C89 kernel). After a few years of not a single example being raised, the Linux team lead opted to adopt C99.
>
> Now, there are flags affecting the ABI, but those are separate from the C standard version. As for C++, mixing standard versions does go badly because new language features require ABI changes.
> >
Yes, since mixing standard versions is not so good, and many ebuilds
hard-code it with append-cxxflags, I think it's worth discussing a
better solution that will avoid unnecessary breakage. The big problem
is going from C++14 to C++17 as mentioned before. The 'noexcept' became
part of the mangled name. C++17 also removes features, so there will be
code that will need to be changed to compile as well. If we have a
system-wide setting, we can start warning upstreams about it at least
when things break.
Cheers,
-Guilherme
next prev parent reply other threads:[~2018-09-18 14:26 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-09-17 15:37 [gentoo-dev] [RFC] C++ standard in ebuilds Guilherme Amadio
2018-09-17 16:40 ` Vadim A. Misbakh-Soloviov
2018-09-18 12:46 ` Richard Yao
2018-09-18 14:26 ` Guilherme Amadio [this message]
2018-09-17 17:24 ` Matt Turner
2018-09-17 18:38 ` Georg Rudoy
2018-09-18 14:31 ` Guilherme Amadio
2018-09-21 7:17 ` Dennis Schridde
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20180918142607.GA25320@gentoo.org \
--to=amadio@gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox