// RUN: clang-cc -emit-llvm %s -o - -triple=x86_64-apple-darwin9 | FileCheck %s | |
struct I { | |
int i; | |
I(); | |
~I(); | |
}; | |
void g(int); | |
volatile int i; | |
void f1() { | |
// CHECK: call void @_ZN1IC1Ev | |
g(i ? I().i : 0); | |
// CHECK: call void @_Z1gi | |
// CHECK: call void @_ZN1ID1Ev | |
// CHECK: call void @_ZN1IC1Ev | |
g(i || I().i); | |
// CHECK: call void @_Z1gi | |
// CHECK: call void @_ZN1ID1Ev | |
// CHECK: call void @_ZN1IC1Ev | |
g(i && I().i); | |
// CHECK: call void @_Z1gi | |
// CHECK: call void @_ZN1ID1Ev | |
} |