This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [C++ Patch] Define __cplusplus == 201300L for -std=c++1y
- From: Jonathan Wakely <jwakely dot gcc at gmail dot com>
- To: Daniel Krügler <daniel dot kruegler at gmail dot com>
- Cc: Paolo Carlini <paolo dot carlini at oracle dot com>, Jakub Jelinek <jakub at redhat dot com>, Jason Merrill <jason at redhat dot com>, "gcc-patches at gcc dot gnu dot org" <gcc-patches at gcc dot gnu dot org>, Gabriel Dos Reis <gdr at integrable-solutions dot net>
- Date: Fri, 26 Apr 2013 13:41:04 +0100
- Subject: Re: [C++ Patch] Define __cplusplus == 201300L for -std=c++1y
- References: <51781E19 dot 9030802 at oracle dot com> <51782286 dot 7020303 at redhat dot com> <517A57C8 dot 9070309 at oracle dot com> <20130426104227 dot GO28963 at tucnak dot redhat dot com> <517A5C2C dot 9090305 at oracle dot com> <CAGNvRgDxa86nXbjcCzoL9oJpOB_iwB3cjP3cZTt2NjOHX+HsKQ at mail dot gmail dot com> <CAGNvRgDieWLPRT8Fcq54ymM=qaF0kyky0+DWrp4VDNzgCW8g0A at mail dot gmail dot com> <CAGNvRgAg4rTVuSM37LOgXwaro3b1gjBFZdc97eUfX4CbibqGiA at mail dot gmail dot com>
On 26 April 2013 12:06, Daniel Krügler wrote:
>>>
>>> Jonathan recently submitted an LWG issue for this (not yet part of the
>>> available list). I'm in the process to add the new issue within the
>>> following days. He's essentially suggesting to remove get() from
>>> C++14.
>>
>> To clarify this: The C++ Standard currently refers to a get() function
>> that does not exist anymore in the reference C99. So, its removal
>> looks more than reasonable to me.
>
> Sorry, I need to correct me here: gets() is part of C99 TC3, but has
> been deprecated.
Yes. When I submitted the issue I was under the impression (along with
most of the BSI C++ panel) that the C++ standard references the
current C standard, which is now C11. I was told in Bristol that the
reference to ISO/IEC 9899:1999 is fine and so we only reference the
C99 library, which still includes gets(). So I think the issue I
submitted is NAD.
IMHO it wouldn't be a bad thing to remove gets() from the C++ Standard
Library even if it's technically still in C99. It is evil and should
be killed with fire. But that probably can't be handled with a DR and
so is too late for C++14.