aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/Preprocessor/macro_paste_c_block_comment.c3
-rw-r--r--test/Preprocessor/macro_paste_identifier_error.c7
2 files changed, 10 insertions, 0 deletions
diff --git a/test/Preprocessor/macro_paste_c_block_comment.c b/test/Preprocessor/macro_paste_c_block_comment.c
index c690a4c7c9..92b2f60188 100644
--- a/test/Preprocessor/macro_paste_c_block_comment.c
+++ b/test/Preprocessor/macro_paste_c_block_comment.c
@@ -3,3 +3,6 @@
#define COMM / ## *
COMM // expected-error {{pasting formed '/*', an invalid preprocessing token}}
+// Demonstrate that an invalid preprocessing token
+// doesn't swallow the rest of the file...
+#error EOF // expected-error {{EOF}}
diff --git a/test/Preprocessor/macro_paste_identifier_error.c b/test/Preprocessor/macro_paste_identifier_error.c
new file mode 100644
index 0000000000..457e6f7fc1
--- /dev/null
+++ b/test/Preprocessor/macro_paste_identifier_error.c
@@ -0,0 +1,7 @@
+// RUN: %clang_cc1 -fms-extensions -Wno-invalid-token-paste %s -verify
+// RUN: %clang_cc1 -E -fms-extensions -Wno-invalid-token-paste %s | FileCheck %s
+// RUN: %clang_cc1 -E -fms-extensions -Wno-invalid-token-paste -x assembler-with-cpp %s | FileCheck %s
+
+#define foo a ## b ## = 0
+int foo;
+// CHECK: int ab = 0;