| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 
 | // RUN: %clang_cc1 -emit-llvm %s -o %t
// PR1824
int foo(int x, short y) {
  return x ?: y;
}
// rdar://6586493
float test(float x, int Y) {
  return Y != 0 ? : x;
}
// 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;
}
 |