This is the mail archive of the
mailing list for the GCC project.
Re: Disable -std=c++17 "ISO C++1z does not allow dynamic exception specifications"?
- From: Jonathan Wakely <jwakely dot gcc at gmail dot com>
- To: Jakub Jelinek <jakub at redhat dot com>
- Cc: Stephan Bergmann <sbergman at redhat dot com>, "gcc at gcc dot gnu dot org" <gcc at gcc dot gnu dot org>
- Date: Tue, 21 Feb 2017 14:55:50 +0000
- Subject: Re: Disable -std=c++17 "ISO C++1z does not allow dynamic exception specifications"?
- Authentication-results: sourceware.org; auth=none
- References: <firstname.lastname@example.org> <20170221145110.GN1849@tucnak>
On 21 February 2017 at 14:51, Jakub Jelinek wrote:
> On Tue, Feb 21, 2017 at 03:44:17PM +0100, Stephan Bergmann wrote:
>> There is no flag to suppress that error or demote it to a warning, is there?
>> Could be useful when adapting large code bases to C++17 incrementally.
> It is a warning in C++11/C++14 now, so compile with -std=c++14 and
> incrementally fix all those warnings, then switch over to -std=c++17?
> -std=c++17 also turns on P0012R1 (noexcept part of the typesystem), so not
> sure what would the deprecated dynamic exception specification mean
> together with that (we shouldn't be adding new mangling for the dynamic
> exception specification etc.).
We absolutely shouldn't add new mangling, but it could simply mean
An exception specification that says "this can throw X, Y and Z" means
it can throw.
I'm not proposing we do that though, I want dynamic exception
specifications to go away ASAP :-) I'm surprised who are trying C++17
didn't get the memo 10+ years ago that they were broken and useless.