generalized lvalues
Matt Austern
austern@apple.com
Fri Nov 19 04:52:00 GMT 2004
On Nov 18, 2004, at 5:26 PM, Mike Stump wrote:
> On Nov 18, 2004, at 10:27 AM, Joe Buck wrote:
>> Really?
>
> AFAIK.
>
>> Can you show some of the example errors?
>
> Sounds boring and tedious, I don't see any benefit to doing that work.
> I've accepted the extension is gone and just plan on informing users
> it is gone.
But I'll give two examples (details changed partly to protect the
guilty and partly because I'm doing this by memory):
(1) #define foo(x) *(a, b, x)
(2) ((long*) p)++
Again, I'm not arguing that this extension should come back. I'm
unhappy about the whole situation, because (as Joe pointed out) we had
a choice between removing an extension without the usual amount of
notice and the usual number of releases where it's deprecated, or else
accepting a serious bug in our C++ front end and not fixing it. At the
time I thought the former choice was less bad, and I think that's still
probably true. But right now I'm mostly interested in collecting
information. I'd like to make sure I understand all of the
consequences of our decision.
I'm most interested in your comment, Andrew, that cast-as-lvalue was
impossible to accommodate in GIMPLE. Can you expand on that?
--Matt
More information about the Gcc
mailing list