aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/pp/17.c14
-rw-r--r--tests/pp/17.expect6
2 files changed, 20 insertions, 0 deletions
diff --git a/tests/pp/17.c b/tests/pp/17.c
new file mode 100644
index 0000000..f12196f
--- /dev/null
+++ b/tests/pp/17.c
@@ -0,0 +1,14 @@
+#define STR1(u) # u
+#define pass(a) a
+#define __ASM_REG(reg) STR1(one##reg)
+#define _ASM_DX __ASM_REG(tok)
+X162 pass(__ASM_REG(tok))
+X161 pass(_ASM_DX)
+X163 pass(STR1(one##tok))
+
+X170 pass(x ## y)
+X171 pass(x pass(##) y)
+
+#define Y(x) Z(x)
+#define X Y
+X180 return X(X(1));
diff --git a/tests/pp/17.expect b/tests/pp/17.expect
new file mode 100644
index 0000000..e95aafe
--- /dev/null
+++ b/tests/pp/17.expect
@@ -0,0 +1,6 @@
+X162 "onetok"
+X161 "onetok"
+X163 "one##tok"
+X170 x ## y
+X171 x ## y
+X180 return Z(Z(1));