|  | // RUN: clang -parse-noop %s | 
|  |  | 
|  | void test1() { | 
|  | if (sizeof (int){ 1});   // sizeof compound literal | 
|  | if (sizeof (int));       // sizeof type | 
|  |  | 
|  | (int)4;   // cast. | 
|  | (int){4}; // compound literal. | 
|  |  | 
|  | // FIXME: change this to the struct version when we can. | 
|  | //int A = (struct{ int a;}){ 1}.a; | 
|  | int A = (int){ 1}.a; | 
|  | } | 
|  |  | 
|  | int test2(int a, int b) { | 
|  | return a ? a,b : a; | 
|  | } | 
|  |  | 
|  | int test3(int a, int b, int c) { | 
|  | return a = b = c; | 
|  | } | 
|  |  | 
|  | int test4() { | 
|  | test4(); | 
|  | } | 
|  |  | 
|  | int test_offsetof() { | 
|  | // FIXME: change into something that is semantically correct. | 
|  | __builtin_offsetof(int, a.b.c[4][5]); | 
|  | } | 
|  |  | 
|  | void test_sizeof(){ | 
|  | int arr[10]; | 
|  | sizeof arr[0]; | 
|  | sizeof(arr[0]); | 
|  | sizeof(arr)[0]; | 
|  | } | 
|  |  | 
|  |  |