From 4265559a69290dee56a0df1e7d83610a869b02fc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Manuel=20L=C3=B3pez-Ib=C3=A1=C3=B1ez?= Date: Thu, 14 Aug 2008 13:01:58 +0000 Subject: [PATCH] re PR c++/28152 (Diagnostic about wrong use _Complex prints __complex__) 2008-08-08 Manuel Lopez-Ibanez PR c/28152 * c-parser.c (c_lex_one_token): Do not store the canonical spelling for keywords. testsuite/ * gcc.dg/parser-pr28152.c: New. * gcc.dg/parser-pr28152-2.c: New. From-SVN: r139097 --- gcc/ChangeLog | 6 ++++++ gcc/c-parser.c | 2 -- gcc/testsuite/ChangeLog | 6 ++++++ gcc/testsuite/gcc.dg/parser-pr28152-2.c | 11 +++++++++++ gcc/testsuite/gcc.dg/parser-pr28152.c | 11 +++++++++++ 5 files changed, 34 insertions(+), 2 deletions(-) create mode 100644 gcc/testsuite/gcc.dg/parser-pr28152-2.c create mode 100644 gcc/testsuite/gcc.dg/parser-pr28152.c diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 77796d5674e..73b478e6558 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2008-08-14 Manuel Lopez-Ibanez + + PR c/28152 + * c-parser.c (c_lex_one_token): Do not store the canonical spelling + for keywords. + 2008-08-14 Dorit Nuzman * tree-vect-transform.c (vect_create_epilog_for_reduction): Takes an diff --git a/gcc/c-parser.c b/gcc/c-parser.c index 6617145a6cb..1ea9d07fcdf 100644 --- a/gcc/c-parser.c +++ b/gcc/c-parser.c @@ -241,8 +241,6 @@ c_lex_one_token (c_parser *parser, c_token *token) } else { - /* Return the canonical spelling for this keyword. */ - token->value = ridpointers[(int) rid_code]; token->type = CPP_KEYWORD; token->keyword = rid_code; break; diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 095d0a6450e..bdbc3542e9e 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,9 @@ +2008-08-14 Manuel Lopez-Ibanez + + PR c/28152 + * gcc.dg/parser-pr28152.c: New. + * gcc.dg/parser-pr28152-2.c: New. + 2008-08-14 Dorit Nuzman * gcc.dg/vect/vect-outer-4g.c: Change loop bound. diff --git a/gcc/testsuite/gcc.dg/parser-pr28152-2.c b/gcc/testsuite/gcc.dg/parser-pr28152-2.c new file mode 100644 index 00000000000..18dc1e63dec --- /dev/null +++ b/gcc/testsuite/gcc.dg/parser-pr28152-2.c @@ -0,0 +1,11 @@ +/* PR 28152: error messages should mention __complex__ */ +/* { dg-do compile } */ +/* { dg-options "" } */ +int +main (void) +{ + __complex__ float z; + + z = __complex__ (1.90000007326203904e+19, 0.0); /* { dg-error "__complex__" } */ + z = __complex__ (1.0e+0, 0.0) / z; /* { dg-error "__complex__" } */ + /* { dg-error "at end of input" "" { target *-*-* } 10 } */ diff --git a/gcc/testsuite/gcc.dg/parser-pr28152.c b/gcc/testsuite/gcc.dg/parser-pr28152.c new file mode 100644 index 00000000000..99534c10bfe --- /dev/null +++ b/gcc/testsuite/gcc.dg/parser-pr28152.c @@ -0,0 +1,11 @@ +/* PR 28152: error messages should mention _Complex */ +/* { dg-do compile } */ +/* { dg-options "" } */ +int +main (void) +{ + _Complex float z; + + z = _Complex (1.90000007326203904e+19, 0.0); /* { dg-error "_Complex" } */ + z = _Complex (1.0e+0, 0.0) / z; /* { dg-error "_Complex" } */ + /* { dg-error "at end of input" "" { target *-*-* } 10 } */