diff options
author | Nathan Sidwell <nathan@codesourcery.com> | 2001-05-16 09:37:21 +0000 |
---|---|---|
committer | Nathan Sidwell <nathan@gcc.gnu.org> | 2001-05-16 09:37:21 +0000 |
commit | cc469ee98e2f333a76532552fa96ec845a17a03a (patch) | |
tree | 0441f888743a37ae399d012a85099a038029463f | |
parent | 3f0a9b3563fa102e975854ecdd17980550c9cd22 (diff) | |
download | gcc-cc469ee98e2f333a76532552fa96ec845a17a03a.zip gcc-cc469ee98e2f333a76532552fa96ec845a17a03a.tar.gz gcc-cc469ee98e2f333a76532552fa96ec845a17a03a.tar.bz2 |
spew.c (read_token): Call yyerror on all unexpected tokens.
cp:
* spew.c (read_token): Call yyerror on all unexpected tokens.
testsuite:
* g++.old-deja/g++.other/crash41.C: New test.
From-SVN: r42143
-rw-r--r-- | gcc/cp/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/cp/spew.c | 11 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 8 | ||||
-rw-r--r-- | gcc/testsuite/g++.old-deja/g++.other/crash41.C | 13 |
4 files changed, 26 insertions, 10 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index a739534..06e64a5 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,5 +1,9 @@ 2001-05-16 Nathan Sidwell <nathan@codesourcery.com> + * spew.c (read_token): Call yyerror on all unexpected tokens. + +2001-05-16 Nathan Sidwell <nathan@codesourcery.com> + * init.c (member_init_ok_or_else): Take a tree rather than string for name. (expand_member_init): Adjust. diff --git a/gcc/cp/spew.c b/gcc/cp/spew.c index 4a230f0..7b88757 100644 --- a/gcc/cp/spew.c +++ b/gcc/cp/spew.c @@ -1,6 +1,6 @@ /* Type Analyzer for GNU C++. Copyright (C) 1987, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000 Free Software Foundation, Inc. + 1999, 2000, 2001 Free Software Foundation, Inc. Hacked... nay, bludgeoned... by Mark Eichin (eichin@cygnus.com) This file is part of GNU CC. @@ -353,14 +353,9 @@ read_token (t) t->yychar = STRING; break; - /* These tokens should not survive translation phase 4. */ - case CPP_HASH: - case CPP_PASTE: - error ("syntax error before '#' token"); - goto retry; - default: - abort (); + yyerror ("parse error"); + goto retry; } t->lineno = lineno; diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 9793562..ffe5ab5 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,7 +1,11 @@ 2001-05-16 Nathan Sidwell <nathan@codesourcery.com> - * g++.pt/inherit2.C: Remove XFAIL. - * g++.pt/crash66.C: New test. + * g++.old-deja/g++.other/crash41.C: New test. + +2001-05-16 Nathan Sidwell <nathan@codesourcery.com> + + * g++.old-deja/g++.pt/inherit2.C: Remove XFAIL. + * g++.old-deja/g++.pt/crash66.C: New test. 2001-05-15 Benjamin Kosnik <bkoz@redhat.com> diff --git a/gcc/testsuite/g++.old-deja/g++.other/crash41.C b/gcc/testsuite/g++.old-deja/g++.other/crash41.C new file mode 100644 index 0000000..7043450 --- /dev/null +++ b/gcc/testsuite/g++.old-deja/g++.other/crash41.C @@ -0,0 +1,13 @@ +// Build don't link: +// +// Copyright (C) 2001 Free Software Foundation, Inc. +// Contributed by Nathan Sidwell 8 May 2001 <nathan@codesourcery.com> + +// Bug 2744. We ICE'd on strange characters + +@ // ERROR - parse error +int a; #// ERROR - parse error +## // ERROR - parse error +$ // ERROR - parse error +£ // ERROR - parse error +` // ERROR - parse error |