forked from OSchip/llvm-project
25 lines
528 B
C++
25 lines
528 B
C++
// RUN: %clang_cc1 -triple i386-unknown-unknown -emit-llvm -o - %s | FileCheck %s
|
|
|
|
// Non-trivial dtors, should both be passed indirectly.
|
|
struct S {
|
|
~S();
|
|
int s;
|
|
};
|
|
|
|
// CHECK: define void @_Z1fv(%struct.S* noalias sret %
|
|
S f() { return S(); }
|
|
// CHECK: define void @_Z1f1S(%struct.S*)
|
|
void f(S) { }
|
|
|
|
// Non-trivial dtors, should both be passed indirectly.
|
|
class C {
|
|
~C();
|
|
double c;
|
|
};
|
|
|
|
// CHECK: define void @_Z1gv(%class.C* noalias sret %
|
|
C g() { return C(); }
|
|
|
|
// CHECK: define void @_Z1f1C(%class.C*)
|
|
void f(C) { }
|