2010-01-01 10:34:51 +00:00
|
|
|
// RUN: %clang_cc1 -emit-llvm %s -o %t
|
2009-06-02 17:58:47 +00:00
|
|
|
// PR1824
|
|
|
|
|
|
|
|
int foo(int x, short y) {
|
|
|
|
return x ?: y;
|
|
|
|
}
|
|
|
|
|
|
|
|
// rdar://6586493
|
|
|
|
float test(float x, int Y) {
|
|
|
|
return Y != 0 ? : x;
|
|
|
|
}
|
|
|
|
|
2011-02-20 13:06:31 +00:00
|
|
|
// rdar://8446940
|
|
|
|
extern void abort();
|
|
|
|
void test1 () {
|
|
|
|
char x[1];
|
|
|
|
char *y = x ? : 0;
|
|
|
|
|
|
|
|
if (x != y)
|
|
|
|
abort();
|
|
|
|
}
|
|
|
|
|
|
|
|
// rdar://8453812
|
|
|
|
_Complex int getComplex(_Complex int val) {
|
|
|
|
static int count;
|
|
|
|
if (count++)
|
|
|
|
abort();
|
|
|
|
return val;
|
|
|
|
}
|
|
|
|
|
|
|
|
_Complex int complx() {
|
|
|
|
_Complex int cond;
|
|
|
|
_Complex int rhs;
|
|
|
|
|
|
|
|
return getComplex(1+2i) ? : rhs;
|
|
|
|
}
|