C++ extension "cast-as-lvalues": time to deprecate?

Mark Mitchell mark@codesourcery.com
Fri May 9 23:21:00 GMT 2003


On Fri, 2003-05-09 at 14:00, Joe Buck wrote:
> On Fri, May 09, 2003 at 07:34:19PM +0100, Nathan Sidwell wrote:
> > Matt Austern wrote:
> > 
> > > We said it was deprecated in the documentation, but we never enforced
> > > that with a warning.  I think the schedule for removal will have to
> > > look something like this:
> > >  - Next release: put in a warning for this extension, and allow users
> > >    to turn it off with a switch.
> > >  - The release after that: don't allow users to turn the warning off.
> > >  - Finally, in the next release: remove it entirely.
> > > 
> > > I could imagine doing this over the course of two releases instead
> > > of three, but two is the absolute minimum.
> > Normal practice for g++ at least appears to be two, add a warning in
> > release N, remove it in N+1
> 
> There's a somewhat different issue here, though: what about strictly
> conforming programs that malfunction because of the extension, in a way
> that is surprising to the user?  Do we have to keep miscompiling them
> for two more releases?

I think not.  I think we can add a warning in 3.3.1, and remove the
feature in 3.4.

-- 
Mark Mitchell
CodeSourcery, LLC
mark@codesourcery.com



More information about the Gcc mailing list