* decl.c (make_typename_type): s/parameters/arguments/.
[official-gcc.git] / gcc / testsuite / g++.dg / cpp0x / ref-qual-mangle1.C
blobc6ef0792b50184be4546ceb6e4fd5fab94ee3e01
1 // PR c++/56821
2 // { dg-require-effective-target c++11 }
4 struct A {
5   // { dg-final { scan-assembler "_ZNR1A1fEv" } }
6   void f() & {}
7   // { dg-final { scan-assembler "_ZNO1A1gEv" } }
8   void g() && {}
9   // { dg-final { scan-assembler "_ZNKR1A1hEv" } }
10   void h() const & {}
13 // { dg-final { scan-assembler "_Z1jM1AFvvRE" } }
14 void j(void (A::*)() &) { }
15 // { dg-final { scan-assembler "_Z1kM1AFvvOE" } }
16 void k(void (A::*)() &&) { }
17 // { dg-final { scan-assembler "_Z1lM1AKFvvRE" } }
18 void l(void (A::*)() const &) { }
20 // { dg-final { scan-assembler "_Z1mIFvvOEEvM1AT_" } }
21 // { dg-final { scan-assembler "_Z1mIFvvREEvM1AT_" } }
22 // { dg-final { scan-assembler "_Z1mIKFvvREEvM1AT_" } }
23 template <typename T>
24 void m(T A::*) {}
26 // { dg-final { scan-assembler "_Z1nIM1AFvvOEEvT_" } }
27 // { dg-final { scan-assembler "_Z1nIM1AFvvREEvT_" } }
28 // { dg-final { scan-assembler "_Z1nIM1AKFvvREEvT_" } }
29 template <typename T>
30 void n(T) {}
32 int main()
34   j(&A::f); k(&A::g); l(&A::h);
35   m(&A::f); m(&A::g); m(&A::h);
36   n(&A::f); n(&A::g); n(&A::h);