diff options
Diffstat (limited to 'testcases-narg')
-rw-r--r-- | testcases-narg | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/testcases-narg b/testcases-narg index c275e42..67ccee6 100644 --- a/testcases-narg +++ b/testcases-narg @@ -41,3 +41,17 @@ $cppawk ' BEGIN { print srev(1), srev(1,2), srev(1, 2, 3) }' : (1) (2, 1) (3, 2, 1) +-- +5: +$cppawk ' +#include <narg.h> +#define first(x) x +#define rest(prev, x) prev : x +#define colonize(...) [varexpand(first, rest, __VA_ARGS__)] +#define str(x) #x +#define xstr(x) str(x) +#define scolonize(...) xstr(colonize(__VA_ARGS__)) +#define scol(x, rest) scolonize(x, splice(rest)) +BEGIN { print scol(1, (2, 3)) }' +: +[1 : 2 : 3] |