gmqcc/tests/noreturn.qc
2012-12-22 18:09:56 +01:00

29 lines
533 B
C++

#ifndef NORETURN
#define NORETURN [[noreturn]]
#endif
void print(...) = #1;
string ftos(float) = #2;
NORETURN void error(...) = #6;
#if TEST == 1
void test1(float a) {
float x;
if (a == 1) x = 1337;
else if (a == 2) x = 1338;
else
error("Error\n");
print("Is this initialized: ", ftos(x), "\n");
}
#else
float test2(float it) {
switch (it) {
case 1: return 0;
case 2: return 1;
default: error("End of non-void not reachable...\n");
}
}
#endif