This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: RFA: Deprecate C++ options
- To: Mark Mitchell <mark at codesourcery dot com>
- Subject: Re: RFA: Deprecate C++ options
- From: Tim Hollebeek <tim at hollebeek dot com>
- Date: Thu, 6 Sep 2001 18:14:47 -0400
- Cc: Nathan Sidwell <nathan at codesourcery dot com>, "gcc at gcc dot gnu dot org" <gcc at gcc dot gnu dot org>, "jason at redhat dot com" <jason at redhat dot com>
- References: <3B9752E1.C1DEFE5E@codesourcery.com> <42200000.999812577@warlock.codesourcery.com>
- Reply-To: tim at hollebeek dot com
> > I'd like to deprecate and then remove them from g++ asap. I
> > suggest deprecating them in 3.1 and removal in 3.2
> >
> > Support of old ARM conformant code
> > -fno-for-scope
> > the for loop variable's scope extends beyond the loop
> > -fcheck-new
> > cope with operator new returning null, rather than throwing
> > The interaction of this with the builtin operator new and
> > -fno-exceptions confuses users.
> > -fno-operator-names
> > don't have `and' `or' etc as keywords
>
> I agree. All of these will cause minor headaches for people working
> with very old code, but all are easily fixed, and none have been
> considered correct C++ for ages, and all would simplify the compiler.
In the real world, people need to be able to compile old software. I
propose that the lifetime of -fno-for-scope and friends be mandated to
be no shorter than that of -traditional (conservatively, let's call
that 1-2 decades). Yes, it is a PITA for compiler developers to support
older language standards. So be it. At one point, that code was
considered legal, required for portability to other ARM compliant
compilers, and gcc supported it.
If people would rather combine these options into -lang=c++-arm, to
reduce the number of combinations of options that is possible, then do
that. But don't succumb to the silly argument that it is no longer
necessary to produce a compiler that knows how to compile this
relatively recent code. Planned obselescence is a Microsoft strategy,
not a GNU strategy.
-Tim