| // RUN: %llvmgxx -S %s -o - | llvm-as -f -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); | |
| } | |