source: src/tests/switch.c @ 057b34f

aaron-thesisarm-ehcleanup-dtorsctordeferred_resndemanglerjacob/cs343-translationjenkins-sandboxmemorynew-astnew-ast-unique-exprnew-envno_listpersistent-indexerresolv-newwith_gc
Last change on this file since 057b34f was 057b34f, checked in by Peter A. Buhr <pabuhr@…>, 6 years ago

more case range clean up

  • Property mode set to 100644
File size: 1.4 KB
Line 
1//
2// Cforall Version 1.0.0 Copyright (C) 2016 University of Waterloo
3//
4// The contents of this file are covered under the licence agreement in the
5// file "LICENCE" distributed with Cforall.
6//
7// switch.c --
8//
9// Author           : Peter A. Buhr
10// Created On       : Tue Jul 12 06:50:22 2016
11// Last Modified By : Peter A. Buhr
12// Last Modified On : Sat Jul 30 14:41:32 2016
13// Update Count     : 30
14//
15
16int f( int i ) { return i; }
17
18int main() {
19        int i = 0;
20        switch ( i ) case 3 : i = 1;
21        switch ( i ) default : f( 3 );
22
23        switch ( 3 )
24          default:
25          case 2:
26          case 3:
27                f( 3 );
28
29        switch ( i ) {}
30        switch ( i ) {
31          case 3:
32                f( 3 );
33        } // switch
34
35        switch ( 3 ) {
36                int j;
37          case 3:
38                break;
39          case 4:
40                j = 0;
41        }
42
43        switch ( i ) {
44                int j = 0;
45                int k = 0;
46                struct S { int i; };
47                S s;
48          case 8~10:
49          default:
50                i = 3;
51          case 19:
52          case 'A' ... 'Z':
53          case 1 ... 6:
54          case 20, 30:
55                j = 3;
56                f( 3 );
57                break;
58        } // switch
59
60        choose ( i ) case 3 : f( 3 );
61        choose ( i ) default : i = 1;
62
63        choose ( 3 )
64          case 2:
65          default:
66          case 3:
67                f( 3 );
68
69        choose ( i ) {}
70        choose ( i ) {
71          case 3:
72                f( 3 );
73        } // choose
74
75        choose ( i ) {
76                int j = 0;
77                int k = 0;
78                struct S { int i; };
79                S s;
80          case 19:
81          case 'A' ... 'Z':
82          case 0 ... 6:
83          case 20, 30, 40:
84                i = 3;
85                f( 3 );
86          default:
87                j = 3;
88          case 8~10:
89                f( 3 );
90                fallthru
91          case 'd':
92                j = 5;
93        } // choose
94}
95
96// Local Variables: //
97// tab-width: 4 //
98// compile-command: "cfa switch.c" //
99// End: //
Note: See TracBrowser for help on using the repository browser.