This is the mail archive of the gcc-patches@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]

g++.other/crash[23]*.C: Permitting Parser to Recover


Recent compiler changes mean that the gcc parser successfully recovers
from parsing errors rather than crashing.  Thus, we change these tests
to XFAIL upon excess errors, not when crashing.

2001-02-11  Jeffrey Oldham  <oldham@codesourcery.com>

        * g++.old-deja/g++.other/crash26.C: XFAIL if parser produces
        excess errors message but not if it crashes.
        * g++.old-deja/g++.other/crash27.C: Likewise.
        * g++.old-deja/g++.other/crash28.C: Likewise.
        * g++.old-deja/g++.other/crash30.C: Likewise.
        * g++.old-deja/g++.other/crash32.C: Likewise.
        * g++.old-deja/g++.other/crash35.C: Likewise.
        * g++.old-deja/g++.pt/inherit2.C: Likewise.

Tested on       i686-pc-linux-gnu.
Approved by     Mark Mitchell (mark@codesourcery.com)

Thanks,
Jeffrey D. Oldham
oldham@codesourcery.com
Index: g++.other/crash26.C
===================================================================
RCS file: /cvs/gcc/egcs/gcc/testsuite/g++.old-deja/g++.other/crash26.C,v
retrieving revision 1.1
diff -c -p -r1.1 crash26.C
*** crash26.C	2000/11/06 12:29:02	1.1
--- crash26.C	2001/02/09 17:13:13
***************
*** 1,7 ****
  // Build don't link:
  // Origin: Jakub Jelinek <jakub@redhat.com>
  
! // crash test - XFAIL *-*-*
  
  class foo {
  public:
--- 1,7 ----
  // Build don't link:
  // Origin: Jakub Jelinek <jakub@redhat.com>
  
! // excess errors test - XFAIL *-*-*
  
  class foo {
  public:
Index: g++.other/crash27.C
===================================================================
RCS file: /cvs/gcc/egcs/gcc/testsuite/g++.old-deja/g++.other/crash27.C,v
retrieving revision 1.1
diff -c -p -r1.1 crash27.C
*** crash27.C	2000/11/06 12:29:02	1.1
--- crash27.C	2001/02/09 17:13:13
***************
*** 1,7 ****
  // Build don't link:
  // Origin: Jakub Jelinek <jakub@redhat.com>
  
! // crash test - XFAIL *-*-*
  
  X(Y(long, Type, CLink)); break; default: break; } } }	// ERROR - 
  
--- 1,7 ----
  // Build don't link:
  // Origin: Jakub Jelinek <jakub@redhat.com>
  
! // excess errors test - XFAIL *-*-*
  
  X(Y(long, Type, CLink)); break; default: break; } } }	// ERROR - 
  
Index: g++.other/crash28.C
===================================================================
RCS file: /cvs/gcc/egcs/gcc/testsuite/g++.old-deja/g++.other/crash28.C,v
retrieving revision 1.1
diff -c -p -r1.1 crash28.C
*** crash28.C	2000/11/06 12:29:02	1.1
--- crash28.C	2001/02/09 17:13:13
***************
*** 1,7 ****
  // Build don't link:
  // Origin: Jakub Jelinek <jakub@redhat.com>
  
! // crash test - XFAIL *-*-*
  
  namespace N
  {
--- 1,7 ----
  // Build don't link:
  // Origin: Jakub Jelinek <jakub@redhat.com>
  
! // excess errors test - XFAIL *-*-*
  
  namespace N
  {
Index: g++.other/crash30.C
===================================================================
RCS file: /cvs/gcc/egcs/gcc/testsuite/g++.old-deja/g++.other/crash30.C,v
retrieving revision 1.1
diff -c -p -r1.1 crash30.C
*** crash30.C	2000/11/06 12:29:02	1.1
--- crash30.C	2001/02/09 17:13:13
***************
*** 1,7 ****
  // Build don't link:
  // Origin: Jakub Jelinek <jakub@redhat.com>
  
! // crash test - XFAIL *-*-*
  
  struct foo
  {
--- 1,7 ----
  // Build don't link:
  // Origin: Jakub Jelinek <jakub@redhat.com>
  
! // excess errors test - XFAIL *-*-*
  
  struct foo
  {
Index: g++.other/crash32.C
===================================================================
RCS file: /cvs/gcc/egcs/gcc/testsuite/g++.old-deja/g++.other/crash32.C,v
retrieving revision 1.1
diff -c -p -r1.1 crash32.C
*** crash32.C	2000/11/06 12:29:02	1.1
--- crash32.C	2001/02/09 17:13:13
***************
*** 1,7 ****
  // Build don't link:
  // Origin: Jakub Jelinek <jakub@redhat.com>
  
! // crash test - XFAIL *-*-*
  
  struct foo
  {
--- 1,7 ----
  // Build don't link:
  // Origin: Jakub Jelinek <jakub@redhat.com>
  
! // excess errors test - XFAIL *-*-*
  
  struct foo
  {
Index: g++.other/crash35.C
===================================================================
RCS file: /cvs/gcc/egcs/gcc/testsuite/g++.old-deja/g++.other/crash35.C,v
retrieving revision 1.1
diff -c -p -r1.1 crash35.C
*** crash35.C	2000/11/06 12:29:02	1.1
--- crash35.C	2001/02/09 17:13:13
***************
*** 1,7 ****
  // Build don't link:
  // Origin: Jakub Jelinek <jakub@redhat.com>
  
! // crash test - XFAIL *-*-*
  
  void foo()
  {
--- 1,7 ----
  // Build don't link:
  // Origin: Jakub Jelinek <jakub@redhat.com>
  
! // excess errors test - XFAIL *-*-*
  
  void foo()
  {
Index: g++.pt/inherit2.C
===================================================================
RCS file: /cvs/gcc/egcs/gcc/testsuite/g++.old-deja/g++.pt/inherit2.C,v
retrieving revision 1.1
diff -c -p -r1.1 inherit2.C
*** inherit2.C	2000/09/13 00:59:16	1.1
--- inherit2.C	2001/02/09 17:13:13
***************
*** 1,7 ****
  // Test that we warn about unqualified references to implicit typenames.
  // Bug: g++ is confused by the binding for ::AN and crashes.
  // Special g++ Options:
! // crash test - XFAIL *-*-*
  
  template <class T> struct A {
    struct AA { };
--- 1,7 ----
  // Test that we warn about unqualified references to implicit typenames.
  // Bug: g++ is confused by the binding for ::AN and crashes.
  // Special g++ Options:
! // excess errors test - XFAIL *-*-*
  
  template <class T> struct A {
    struct AA { };

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