// RUN: %clang_cc1 -emit-llvm %s -o %t | |
float test1(int cond, float a, float b) { | |
return cond ? a : b; | |
} | |
double test2(int cond, float a, double b) { | |
return cond ? a : b; | |
} | |
void f(); | |
void test3(){ | |
1 ? f() : (void)0; | |
} | |
void test4() { | |
int i; short j; | |
float* k = 1 ? &i : &j; | |
} | |
void test5() { | |
const int* cip; | |
void* vp; | |
cip = 0 ? vp : cip; | |
} | |
void test6(); | |
void test7(int); | |
void* test8() {return 1 ? test6 : test7;} | |
void _efree(void *ptr); | |
void _php_stream_free3() { | |
(1 ? free(0) : _efree(0)); | |
} | |
void _php_stream_free4() { | |
1 ? _efree(0) : free(0); | |
} | |
// PR5526 | |
struct test9 { int a; }; | |
void* test9spare(); | |
void test9(struct test9 *p) { | |
p ? p : test9spare(); | |
} | |