--- /dev/null
+/* 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