aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Mitchell <mark@codesourcery.com>2003-01-13 00:14:59 +0000
committerMark Mitchell <mmitchel@gcc.gnu.org>2003-01-13 00:14:59 +0000
commite8f2b18d0ec4fc04cba5d9ea60350645247c6548 (patch)
tree4bfd2ec87798546ab7a146b54285f39e03ce62eb
parent70f8b89fd9ff69e2b399042d5b15cd367c970c67 (diff)
downloadgcc-e8f2b18d0ec4fc04cba5d9ea60350645247c6548.zip
gcc-e8f2b18d0ec4fc04cba5d9ea60350645247c6548.tar.gz
gcc-e8f2b18d0ec4fc04cba5d9ea60350645247c6548.tar.bz2
re PR c++/9264 ([parser] ICE on invalid octal constant)
PR c++/9264 * c-lex.c (c_lex): Set the token value to error_mark_node for invalid numeric constants. PR c++/9264 * g++.dg/parse/octal1.C: New file. From-SVN: r61235
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/c-lex.c1
-rw-r--r--gcc/testsuite/ChangeLog8
-rw-r--r--gcc/testsuite/g++.dg/parse/octal1.C1
4 files changed, 16 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 7f04cf6..efcc635 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2003-01-12 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/9264
+ * c-lex.c (c_lex): Set the token value to error_mark_node for
+ invalid numeric constants.
+
2003-01-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* c-pch.c (asm_file_startpos): Change to `long'.
diff --git a/gcc/c-lex.c b/gcc/c-lex.c
index a689ccab..ab06820 100644
--- a/gcc/c-lex.c
+++ b/gcc/c-lex.c
@@ -712,6 +712,7 @@ c_lex (value)
{
case CPP_N_INVALID:
/* cpplib has issued an error. */
+ *value = error_mark_node;
break;
case CPP_N_INTEGER:
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 8016c47..56da2f3 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,11 @@
+2003-01-12 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/9264
+ * g++.dg/parse/octal1.C: New file.
+
+ PR c++/9172
+ * g++.dg/parse/typename1.C: New file.
+
2003-01-10 Danny Smith <dannysmith@users.sourceforge.net>
* gcc.dg/bf-ms-layout.c: Enable for cygwin and mingw32 targets.
diff --git a/gcc/testsuite/g++.dg/parse/octal1.C b/gcc/testsuite/g++.dg/parse/octal1.C
new file mode 100644
index 0000000..8d62eef
--- /dev/null
+++ b/gcc/testsuite/g++.dg/parse/octal1.C
@@ -0,0 +1 @@
+int i = 08; // { dg-error "" }