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: generalized lvalues



On Nov 17, 2004, at 10:50 PM, Andrew Pinski wrote:



On Nov 17, 2004, at 10:47 PM, Matt Austern wrote:


1. It broke valid C++ programs. If we overload a function on constness, like foo(int&) and foo(const int&), then invoking it as foo((int) x) is required to call the const version. Generalized lvalues made us choose the latter.

If it broke it please file a bug and don't complain that we broke it.

Woops I read it wrong but note the C++ front-end removed this extension in 3.4.0 and not just for 4.0.0.

Also removing deprecated stuff after a year is more enough time for
people to change their code.


Also the proposal to deprecate this in C++ was back in May of 2003 which is more than enough time to object to the original proposal.

In fact you commented on the original proposal:
http://gcc.gnu.org/ml/gcc/2003-05/msg00933.html
And you concluded the same thing to remove it:
---- quote --------
I agree, for what it's worth, that this extension should go.  It was
poorly thought out, and we never specified how it was supposed to
interact with other language features.  (We've seen two different
problems with it in the Apple code base.)  Doing language extension
correctly takes a lot of work.
----- end quote ------


-- Pinski



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