New test cases
authorZack Weinberg <zack@gcc.gnu.org>
Tue, 28 Mar 2000 19:20:29 +0000 (19:20 +0000)
committerZack Weinberg <zack@gcc.gnu.org>
Tue, 28 Mar 2000 19:20:29 +0000 (19:20 +0000)
From-SVN: r32785

gcc/testsuite/gcc.dg/cpp-hash1.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/cpp-hash2.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/cpp-ifparen.c [new file with mode: 0644]

diff --git a/gcc/testsuite/gcc.dg/cpp-hash1.c b/gcc/testsuite/gcc.dg/cpp-hash1.c
new file mode 100644 (file)
index 0000000..a4c4b35
--- /dev/null
@@ -0,0 +1,9 @@
+/* Test for proper handling of # in object-like macros.
+   From Linux kernel.  */
+/* { dg-do preprocess } */
+
+#define FIXUP  .section ".fixup",#alloc,#execinstr
+
+FIXUP
+
+/* { dg-bogus "not followed by" "object-like #" { target *-*-* } 3 } */
diff --git a/gcc/testsuite/gcc.dg/cpp-hash2.c b/gcc/testsuite/gcc.dg/cpp-hash2.c
new file mode 100644 (file)
index 0000000..b47c2a2
--- /dev/null
@@ -0,0 +1,15 @@
+/* Test for erroneously thinking comments are token-pastes.
+   From XFree86 4.0.  */
+/* { dg-do preprocess } */
+/* { dg-options "-traditional" } */
+
+#ifndef foo
+#define foo    /**/
+#endif
+
+#ifndef foo
+#define foo    /* as nothing */
+#endif
+
+/* { dg-bogus "(start|end) of macro" "/**/ at end" { target *-*-* } 7 } */
+/* { dg-bogus "(start|end) of macro" "comment at end" { target *-*-* } 11 } */
diff --git a/gcc/testsuite/gcc.dg/cpp-ifparen.c b/gcc/testsuite/gcc.dg/cpp-ifparen.c
new file mode 100644 (file)
index 0000000..39e112e
--- /dev/null
@@ -0,0 +1,7 @@
+#if 2048 < (16 * (40) + 192)
+#error                 /* { dg-bogus "error" "with paren" } */
+#endif
+
+#if 2048 < (16 * 40 + 192)
+#error                 /* { dg-bogus "error" "without paren" } */
+#endif