X-Git-Url: https://git.xonotic.org/?a=blobdiff_plain;f=tests%2Fenum.qc;h=42853d85ffc3886218c3d24319484c8daea3d890;hb=eb2a74f7e7968f99f6a9e01de838a900ebd6efe0;hp=da08ceee128aa2a0da962a5f9c1f852ed89b51a5;hpb=c41ef65cc92193e9b685cc123ca9d4de9d142756;p=xonotic%2Fgmqcc.git diff --git a/tests/enum.qc b/tests/enum.qc index da08cee..42853d8 100644 --- a/tests/enum.qc +++ b/tests/enum.qc @@ -1,4 +1,4 @@ -void(string, ...) print = #1;enum { +enum { // this behaviour is confusing, but I like that // we support it. __ = (__ - 1), @@ -27,6 +27,20 @@ enum { N }; +enum : flag { + F1, /* = 1 << 1 */ + F2, /* = 1 << 2 */ + F3 /* = 1 << 3 */ +}; + +/* reversed enumeration */ +enum : reverse { + R1, // 3 + R2, // 2 + R3, // 1 + R4 // 0 +}; + void main() { print(ftos(A), "\n"); print(ftos(B), "\n"); @@ -42,4 +56,13 @@ void main() { print(ftos(L), "\n"); print(ftos(M), "\n"); print(ftos(N), "\n"); + + print(ftos(F1), "\n"); + print(ftos(F2), "\n"); + print(ftos(F3), "\n"); + + print(ftos(R1), "\n"); + print(ftos(R2), "\n"); + print(ftos(R3), "\n"); + print(ftos(R4), "\n"); };