Added preprocessor test

This commit is contained in:
Dale Weiler 2012-12-02 23:16:44 +00:00
parent 77ef7f516d
commit 4d1514257e
2 changed files with 46 additions and 0 deletions

38
tests/pmacros.qc Normal file
View file

@ -0,0 +1,38 @@
/* will never happen unless blown up */
#ifndef GMQCC
void() main = { error-gmqcc-is-not-defined; };
#else
const string standard =
# ifdef __STD_QCC__
"qcc"
# else
# ifdef __STD_GMQCC__
"gmqcc"
# else
# ifdef __STD_FTEQCC__
"fteqcc"
# else
"unknown"
# endif
# endif
# endif
;
const string verminor = __STD_VERSION_MINOR__;
const string vermajor = __STD_VERSION_MAJOR__;
# define ALPHA_a "a"
# define ALPHA_b "b"
# define ALPHA_c "c"
# define ALPHA(SEL) ALPHA_##SEL
# define ABC ALPHA(a)##ALPHA(b)##ALPHA(c)
void(string, ...) print = #1;
void() main = {
if (ABC == "abc")
print("ABC\n");
if (standard != "unknown")
print("123\n");
};
#endif

8
tests/pmacros.tmpl Normal file
View file

@ -0,0 +1,8 @@
I: pmacros.qc
D: test preprocessor
T: -execute
C: -std=fteqcc
F: preprocessor failed
S: preprocessor works
M: ABC
M: 123