1 /* Used with the types.c test */
2 
3 // TYPE_EXT_QUAL
4 typedef __attribute__((address_space(1))) int ASInt;
5 
6 // TYPE_COMPLEX
7 typedef _Complex float Cfloat;
8 
9 // TYPE_ATOMIC
10 typedef _Atomic(int) AtomicInt;
11 
12 // TYPE_POINTER
13 typedef int * int_ptr;
14 
15 // TYPE_BLOCK_POINTER
16 typedef int (^Block)(int, float);
17 
18 // TYPE_CONSTANT_ARRAY
19 typedef int five_ints[5];
20 
21 // TYPE_INCOMPLETE_ARRAY
22 typedef float float_array[];
23 
24 // TYPE_VARIABLE_ARRAY in stmts.[ch]
25 
26 // TYPE_VECTOR
27 typedef float float4 __attribute__((vector_size(16)));
28 
29 // TYPE_EXT_VECTOR
30 typedef float ext_float4 __attribute__((ext_vector_type(4)));
31 
32 // TYPE_FUNCTION_NO_PROTO
33 typedef int noproto();
34 
35 // TYPE_FUNCTION_PROTO
36 typedef float proto(float, float, ...);
37 
38 // TYPE_TYPEDEF
39 typedef int_ptr * int_ptr_ptr;
40 
41 // TYPE_TYPEOF_EXPR
42 typedef typeof(17) typeof_17;
43 
44 // TYPE_TYPEOF
45 typedef typeof(int_ptr *) int_ptr_ptr2;
46 
47 struct S2;
48 struct S2 {};
49 enum E;
50 enum E { myenum };
51