30 lines · cpp
1// RUN: %clang_cc1 -triple x86_64-apple-darwin10 -emit-llvm -o - %s | FileCheck %s2 3struct Foo {4 Foo();5 Foo(const Foo&);6};7 8struct Bar {9 Bar();10 operator const Foo&() const;11};12 13void f(Foo);14 15// CHECK-LABEL: define{{.*}} void @_Z1g3Foo(ptr dead_on_return noundef %foo)16void g(Foo foo) {17 // CHECK: call void @_ZN3BarC1Ev18 // CHECK: @_ZNK3BarcvRK3FooEv19 // CHECK: call void @_Z1f3Foo20 f(Bar());21 // CHECK: call void @_ZN3FooC1Ev22 // CHECK: call void @_Z1f3Foo23 f(Foo());24 // CHECK: call void @_ZN3FooC1ERKS_25 // CHECK: call void @_Z1f3Foo26 f(foo);27 // CHECK: ret28}29 30