forked from OSchip/llvm-project
69 lines
977 B
C
69 lines
977 B
C
// RUN: clang -fsyntax-only %s
|
|
|
|
int test1() {
|
|
{ ; { ;;}} ;;
|
|
}
|
|
|
|
int test2() {
|
|
if (0) { if (1) {} } else { }
|
|
|
|
do { } while (0);
|
|
|
|
while (0) while(0) do ; while(0);
|
|
|
|
for (0;0;0)
|
|
for (;;)
|
|
for (9;0;2)
|
|
;
|
|
for (int X = 0; 0; 0);
|
|
}
|
|
|
|
int test3() {
|
|
switch (0) {
|
|
|
|
case 4:
|
|
if (0) {
|
|
case 6: ;
|
|
}
|
|
default:
|
|
;
|
|
}
|
|
}
|
|
|
|
int test4() {
|
|
if (0);
|
|
|
|
int X; // declaration in a block.
|
|
|
|
foo: if (0);
|
|
}
|
|
|
|
typedef int t;
|
|
void test5() {
|
|
if (0);
|
|
|
|
//t x = 0; // FIXME: Enable when handling of typedef names is impl.
|
|
|
|
if (0);
|
|
}
|
|
|
|
void test6() {
|
|
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 test7(int a, int b) {
|
|
return a ? a,b : a;
|
|
}
|
|
|
|
int test8(int a, int b) {
|
|
return a = b = c;
|
|
}
|