source: tests/scope.cfa@ dc33b5b

ADT arm-eh ast-experimental enum forall-pointer-decay jacob/cs343-translation jenkins-sandbox new-ast new-ast-unique-expr pthread-emulation qualifiedEnum
Last change on this file since dc33b5b was dc8511c, checked in by Peter A. Buhr <pabuhr@…>, 7 years ago

first attempt at updating suffixes for test programs

  • Property mode set to 100644
File size: 870 bytes
RevLine 
[51b73452]1int x;
2typedef double y;
3typedef float t;
4y z;
[10dc7491]5//otype u = struct { int a; double b; };
6typedef struct { int a; double b; } u;
[51b73452]7int f( int y );
8y q;
[10dc7491]9struct x { int x; };
[51b73452]10
[0b2961f]11y w( y y, u v ) {
[10dc7491]12// otype x | { x t(u); };
13 void ?{}(struct x *);
14 void ^?{}(struct x *);
15 extern struct x t( u );
[a65d92e]16 u u = y;
[10dc7491]17 struct x z = t(u);
[51b73452]18}
19
20y p;
21
[e5b96bf]22trait has_u( otype z ) {
[a65d92e]23 z u(z);
[51b73452]24};
25
[55ba7339]26forall( otype t | has_u( t ) )
[0b2961f]27y q( t the_t ) {
[a65d92e]28 t y = u( the_t );
[51b73452]29}
30
31t f( y p ) {
[a65d92e]32 int y;
33 typedef char x;
34 {
35 x y;
36 typedef x z;
37 {
38 z x;
39 typedef z y;
40 y z = x;
41 }
42 z x = y;
43 }
44 x q = y;
[51b73452]45}
46
[10dc7491]47void some_func() {}
48
[51b73452]49t g( void ) {
[a65d92e]50 typedef char x;
[10dc7491]51// try {
[a65d92e]52 some_func();
[10dc7491]53// } catch ( x x ) {
54// t y = x;
55// }
[a65d92e]56 x z;
[51b73452]57}
58
[0b2961f]59y q( i ) /* K&R style */
60 int i;
[51b73452]61{
[a65d92e]62 switch ( i ) {
63 y q = i;
64 case 0:
65 return q;
66 default:
67 return i;
68 }
[51b73452]69}
70
[a65d92e]71// Local Variables: //
72// tab-width: 4 //
73// End: //
Note: See TracBrowser for help on using the repository browser.