]> git.xonotic.org Git - xonotic/gmqcc.git/blob - tests/pp_va_args.qc
Fix warning, and better tests for __VA_ARGS__
[xonotic/gmqcc.git] / tests / pp_va_args.qc
1 void print(...) = #1;
2
3 // method 0
4 #define METHOD__(...) __VA_ARGS__
5 #define METHOD_0(F,A) F METHOD__(A)
6
7 // method 1
8 #define METHOD_1(F,A) F(METHOD__ A)
9
10 // method 2
11 #define METHOD_2(F,...) F __VA_ARGS__##[0]
12
13 // method 3
14 #define METHOD_3(F,...) F __VA_ARGS__
15
16 void main() {
17     METHOD_0(print, ("Method", " <zero>\n"));
18     METHOD_1(print, ("Method", " <one>\n"));
19     METHOD_2(print, ("Method", " <two>\n"));
20     METHOD_3(print, ("Method", " <three>\n"));
21 }