]> git.xonotic.org Git - xonotic/gmqcc.git/blob - tests/goto.qc
Merge remote-tracking branch 'origin/pp-unary-numbers'
[xonotic/gmqcc.git] / tests / goto.qc
1 void(string, ...) print = #1;
2
3 // correct execution order:
4 // label_3
5 // label_2
6 // label_4
7 // label_3
8 // label_1
9 // label_5
10 void main() {
11     float x = 1;
12     float y = 2;
13
14     goto label_3;
15
16     :label_1; print("label_1", "\n"); goto label_5;
17     :label_2; print("label_2", "\n"); goto label_4;
18     :label_3; print("label_3", "\n");
19
20     // will goto label_2
21     goto (x == y) ? label_1 : label_2;
22
23     :label_4; print("label_4", "\n");
24     {
25         x = 1;
26         y = 1;
27
28         // will goto label_1
29         // then goes label_5
30         goto label_3;
31     }
32
33     :label_5; print("label_5", "\n");
34 }