Re: Middle end warnings cascading after C++ parsing errors

2011-06-24 Thread Diego Novillo
On Thu, Jun 23, 2011 at 22:04, Jason Merrill ja...@redhat.com wrote: On 06/23/2011 06:48 PM, Ian Lance Taylor wrote: Well, so what?  This test case does not represent actual or even likely user code.  I don't think we need to contort ourselves to generate all possible errors for erroneous

Re: Middle end warnings cascading after C++ parsing errors

2011-06-23 Thread Diego Novillo
On Mon, Jun 20, 2011 at 10:50, Diego Novillo dnovi...@google.com wrote: On Mon, Jun 20, 2011 at 10:47, Richard Guenther richard.guent...@gmail.com wrote: On Fri, Jun 17, 2011 at 5:39 PM, Jason Merrill ja...@redhat.com wrote: That seems reasonable to me. Yes.  I think Steven proposed this as

Re: Middle end warnings cascading after C++ parsing errors

2011-06-23 Thread Ian Lance Taylor
Diego Novillo dnovi...@google.com writes: So, I think we need to re-think where to check for seen_errors(). Bailing out too early is disabling some valid diagnostics. For instance, gcc/testsuite/gcc.dg/asm-7.c: $ cat -n

Re: Middle end warnings cascading after C++ parsing errors

2011-06-23 Thread Jason Merrill
On 06/23/2011 06:48 PM, Ian Lance Taylor wrote: Well, so what? This test case does not represent actual or even likely user code. I don't think we need to contort ourselves to generate all possible errors for erroneous input. As many errors as reasonable, yes. All possible errors, no. I

Re: Middle end warnings cascading after C++ parsing errors

2011-06-20 Thread Richard Guenther
On Fri, Jun 17, 2011 at 5:39 PM, Jason Merrill ja...@redhat.com wrote: On 06/17/2011 10:55 AM, Diego Novillo wrote: On Fri, Jun 17, 2011 at 14:47, Diego Novillodnovi...@google.com  wrote: if (flag_syntax_only || flag_wpa)   return; to  if (flag_syntax_only || flag_wpa || errorcount  0)  

Re: Middle end warnings cascading after C++ parsing errors

2011-06-20 Thread Diego Novillo
On Mon, Jun 20, 2011 at 10:47, Richard Guenther richard.guent...@gmail.com wrote: On Fri, Jun 17, 2011 at 5:39 PM, Jason Merrill ja...@redhat.com wrote: That seems reasonable to me. Yes.  I think Steven proposed this as well at some point. Alright, thanks. Unsurprisingly, this produces 152

Middle end warnings cascading after C++ parsing errors

2011-06-17 Thread Diego Novillo
I am looking at an internally reported bug against 4.6 that starts with something like this: $ cat a.cc int bar(int); struct B {    B(int);    ~B() __attribute__((noreturn)); }; int foo(void) {  B::B f(10);  return 0; } int bar(int j) {  B(10); } $ ./cc1plus -Wall -Werror a.cc  int foo()

Re: Middle end warnings cascading after C++ parsing errors

2011-06-17 Thread Diego Novillo
On Fri, Jun 17, 2011 at 14:47, Diego Novillo dnovi...@google.com wrote: if (flag_syntax_only || flag_wpa)   return; to  if (flag_syntax_only || flag_wpa || errorcount 0)   return; To clarify. It would be 'seen_error ()' instead of 'errorcount 0', but the idea is the same. Diego.

Re: Middle end warnings cascading after C++ parsing errors

2011-06-17 Thread Jason Merrill
On 06/17/2011 10:55 AM, Diego Novillo wrote: On Fri, Jun 17, 2011 at 14:47, Diego Novillodnovi...@google.com wrote: if (flag_syntax_only || flag_wpa) return; to if (flag_syntax_only || flag_wpa || errorcount 0) return; To clarify. It would be 'seen_error ()' instead of