source: tests/scope.cfa @ 8c01e1b

ADTarm-ehast-experimentalcleanup-dtorsenumforall-pointer-decayjacob/cs343-translationjenkins-sandboxnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
Last change on this file since 8c01e1b was dc8511c, checked in by Peter A. Buhr <pabuhr@…>, 6 years ago

first attempt at updating suffixes for test programs

  • Property mode set to 100644
File size: 870 bytes
RevLine 
[51b7345]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;
[51b7345]7int f( int y );
8y q;
[10dc7491]9struct x { int x; };
[51b7345]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);
[51b7345]18}
19
20y p;
21
[e5b96bf]22trait has_u( otype z ) {
[a65d92e]23        z u(z);
[51b7345]24};
25
[55ba7339]26forall( otype t | has_u( t ) )
[0b2961f]27y q( t the_t ) {
[a65d92e]28        t y = u( the_t );
[51b7345]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;
[51b7345]45}
46
[10dc7491]47void some_func() {}
48
[51b7345]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;
[51b7345]57}
58
[0b2961f]59y q( i )                                                                                                /* K&R style */
60        int i;
[51b7345]61{
[a65d92e]62        switch ( i ) {
63                y q = i;
64          case 0:
65                return q;
66          default:
67                return i;
68        }
[51b7345]69}
70
[a65d92e]71// Local Variables: //
72// tab-width: 4 //
73// End: //
Note: See TracBrowser for help on using the repository browser.