source: tests/switch.cfa@ 82a5ea2

Last change on this file since 82a5ea2 was 53692b3, checked in by Peter A. Buhr <pabuhr@…>, 4 years ago

second attempt to fix compile-only pragma message that gcc-10/11 quote

  • Property mode set to 100644
File size: 1.7 KB
RevLine 
[4e06c1e]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//
[dc8511c]7// switch.cfa --
[4e06c1e]8//
9// Author : Peter A. Buhr
10// Created On : Tue Jul 12 06:50:22 2016
11// Last Modified By : Peter A. Buhr
[53692b3]12// Last Modified On : Sat Jun 5 10:08:20 2021
13// Update Count : 44
[4e06c1e]14//
15
16int f( int i ) { return i; }
17
[a16d833]18int main( void ) {
[4e06c1e]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
[057b34f]35 switch ( 3 ) {
36 int j;
37 case 3:
38 break;
39 case 4:
40 j = 0;
41 }
[4e06c1e]42
[8688ce1]43 switch ( i ) {
44 case 1, 2, 3:
45 switch ( i ) {
46 case 2, 3, 4:
47 7;
48 }
49 }
50
[4e06c1e]51 switch ( i ) {
52 int j = 0;
53 int k = 0;
54 struct S { int i; };
55 S s;
56 case 8~10:
57 default:
58 i = 3;
[ac911f4]59 case 19:
[4e06c1e]60 case 'A' ... 'Z':
[ac911f4]61 case 1 ... 6:
62 case 20, 30:
[4e06c1e]63 j = 3;
64 f( 3 );
65 break;
66 } // switch
67
68 choose ( i ) case 3 : f( 3 );
69 choose ( i ) default : i = 1;
70
71 choose ( 3 )
72 case 2:
73 default:
74 case 3:
75 f( 3 );
76
77 choose ( i ) {}
78 choose ( i ) {
79 case 3:
80 f( 3 );
81 } // choose
82
83 choose ( i ) {
84 int j = 0;
85 int k = 0;
86 struct S { int i; };
87 S s;
[ac911f4]88 case 19:
[deb52a0]89 case 'A'...'Z':
90 case 0 ...6: // space required, or lexed as decimal point
[ac911f4]91 case 20, 30, 40:
[4e06c1e]92 i = 3;
93 f( 3 );
94 default:
95 j = 3;
96 case 8~10:
97 f( 3 );
[deb52a0]98 fallthru;
[4e06c1e]99 case 'd':
100 j = 5;
101 } // choose
[66812dd]102
[53692b3]103 #pragma GCC warning "Compiled" // force non-empty .expect file, NO TABS!!!
[a16d833]104} // main
[4e06c1e]105
106// Local Variables: //
107// tab-width: 4 //
[dc8511c]108// compile-command: "cfa switch.cfa" //
[4e06c1e]109// End: //
Note: See TracBrowser for help on using the repository browser.