On Tue, Mar 27, 2012 at 8:59 PM, Mike Stump <mikest...@comcast.net> wrote: >> and errors from the middle end are mostly for exotic >> code (involving asm()s and the like). Bailing out after parse errors >> is therefore IMHO the right thing to do for the common case. > > Some are for very exotic things, yes, but not all of them. Actually, I > started reviewing them, none of them seem that exotic to me. Take for > example: > > int f() { return this->i; } // { dg-error "" "no member named i" } > > Really, exotic?
I expect it is not difficult to retain almost all of these C++ errors by lowering (i.e. gimplifying) in the front end, or by having some intermediate stage. It certainly wouldn't be acceptable to loose all those diagnostics, just like that. I'm trying to figure out how to avoid that! But it seemed prudent to ask what other people think of this kind of change before spending loads of time on it :-) Thanks for your comments! Ciao! Steven