This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Removal of pre-ISO C++ items from include/backwards


On 26/10/2007, skaller <skaller@users.sourceforge.net> wrote:
> On Thu, 2007-10-25 at 22:56 +0100, Jonathan Wakely wrote:
> > The plan is to also move auto_ptr and the old bind1st/bind2nd function
> > binders to backward, if/when they are deprecated in C++0x, which would
> > give them the same status as <strstream> (deprecated in C++98)
>
> This would not be correct. When you deprecate C++2000 features,
> you should retain them in such a way that a compiler switch
> such as --std=C++2000 will ensure they're visible in the usual way.

So this doesn't go unchallenged and give people reading the archives
the wrong idea: that's exactly what Benjamin proposed. The link I
posted that you quoted in your reply said those features will only be
deprecated in C++0x mode. So in C++98 mode auto_ptr etc. will stay
exactly where they should be.

> The compiler is expected to conform to the specified standard
> and the standard libraries are an intrinsic part of the
> standard, and IMHO it would be good practice to allow
> 'strict' conformance to an older standard, whilst still
> rejecting 'never standardised' features.

Yes, that's the plan.  Noone has suggested dropping support for
C++98/C++03 nor deprecating anything from those standards except in
C++0x mode.

> Might not auto_ptr etc go into a distinct c++2000 directory?

I don't think the libstdc++ maintainers have decided exactly how the
include directories will be structured when C++0x is finished and
fully-supported.

Bear in mind there is no <auto_ptr> header, so it's not as simple as
just moving individual headers.  But this is a topic for another
thread.

Jon


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]