1 // RUN: %clang_cc1 -emit-llvm %s -o %t 2 // PR1824 3 foo(int x,short y)4int foo(int x, short y) { 5 return x ?: y; 6 } 7 8 // rdar://6586493 test(float x,int Y)9float test(float x, int Y) { 10 return Y != 0 ? : x; 11 } 12 13 // rdar://8446940 14 extern void abort(); test1()15void test1 () { 16 char x[1]; 17 char *y = x ? : 0; 18 19 if (x != y) 20 abort(); 21 } 22 23 // rdar://8453812 getComplex(_Complex int val)24_Complex int getComplex(_Complex int val) { 25 static int count; 26 if (count++) 27 abort(); 28 return val; 29 } 30 complx()31_Complex int complx() { 32 _Complex int cond; 33 _Complex int rhs; 34 35 return getComplex(1+2i) ? : rhs; 36 } 37