diff options
Diffstat (limited to 'gcc/testsuite/gcc.dg/cpp/trad/literals-1.c')
-rw-r--r-- | gcc/testsuite/gcc.dg/cpp/trad/literals-1.c | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.dg/cpp/trad/literals-1.c b/gcc/testsuite/gcc.dg/cpp/trad/literals-1.c new file mode 100644 index 000000000..15c8030fa --- /dev/null +++ b/gcc/testsuite/gcc.dg/cpp/trad/literals-1.c @@ -0,0 +1,28 @@ +/* Test that (what looks like) comments are not recognized in literals + and that quotes within quotes do not confused the preprocessor. */ + +/* { dg-do run } */ + +extern void abort (void); + +int main () +{ + const char *str1 = "/*"; + const char *str2 = "'"; + + if (str1[0] != '/' || str1[1] != '*' || str1[2] != '\0') + abort (); + + if (str2[0] != '\'' || str2[1] != '\0') + abort (); + +#if '"' != '\"' +# error /* { dg-bogus "error" "double quote in charconst" } */ +#endif + +#if !'\'' +# error quote /* { dg-bogus "quote" "quote in charconst" } */ +#endif + + return 0; +} |