summaryrefslogtreecommitdiffstats
path: root/test/Preprocessor/output_paste_avoid.c
diff options
context:
space:
mode:
Diffstat (limited to 'test/Preprocessor/output_paste_avoid.c')
-rw-r--r--test/Preprocessor/output_paste_avoid.c23
1 files changed, 23 insertions, 0 deletions
diff --git a/test/Preprocessor/output_paste_avoid.c b/test/Preprocessor/output_paste_avoid.c
new file mode 100644
index 0000000..ff8afc3
--- /dev/null
+++ b/test/Preprocessor/output_paste_avoid.c
@@ -0,0 +1,23 @@
+// RUN: clang-cc -E %s -o %t &&
+// This should print as ".. ." to avoid turning into ...
+// RUN: grep -F 'A: . . .' %t &&
+#define y(a) ..a
+A: y(.)
+
+// RUN: grep -F 'C: .. .' %t &&
+#define DOT .
+C: ..DOT
+
+
+// RUN: grep -F 'D: + + - - + + = = =' %t &&
+#define PLUS +
+#define EMPTY
+#define f(x) =x=
+D: +PLUS -EMPTY- PLUS+ f(=)
+
+// RUN: grep -F 'E: L "str"' %t
+
+// Should expand to L "str" not L"str"
+#define test(x) L#x
+E: test(str)
+
OpenPOWER on IntegriCloud