llvm/test/FrontendC++/2003-09-29-ArgumentNumberMismatch.cpp
Dan Gohman fea1dd0804 Remove obsolete -f flags.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79992 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-25 15:38:29 +00:00

18 lines
367 B
C++

// RUN: %llvmgxx -S %s -o - | llvm-as -o /dev/null
// Non-POD classes cannot be passed into a function by component, because their
// dtors must be run. Instead, pass them in by reference. The C++ front-end
// was mistakenly "thinking" that 'foo' took a structure by component.
struct C {
int A, B;
~C() {}
};
void foo(C b);
void test(C *P) {
foo(*P);
}