xref: /llvm-project/clang/test/Modules/Inputs/cxx-irgen-right.h (revision 6de7a247824b4d15e97c551a919410cbce90a24f)
1d28ac5b9SRichard Smith #include "cxx-irgen-top.h"
2d28ac5b9SRichard Smith 
h()3d28ac5b9SRichard Smith inline int h() { return S<int>::f(); }
4*6de7a247SRichard Smith 
5*6de7a247SRichard Smith namespace ImplicitSpecialMembers {
create_right()6*6de7a247SRichard Smith   inline void create_right() {
7*6de7a247SRichard Smith     // Trigger declaration, but not definition, of special members.
8*6de7a247SRichard Smith     B b(0); C c(0); D d(0);
9*6de7a247SRichard Smith     // Trigger definition of move constructor.
10*6de7a247SRichard Smith     B b2(static_cast<B&&>(b));
11*6de7a247SRichard Smith     D d2(static_cast<D&&>(d));
12*6de7a247SRichard Smith   }
13*6de7a247SRichard Smith }
14