* decl.c (make_typename_type): s/parameters/arguments/.
[official-gcc.git] / gcc / testsuite / g++.dg / cpp0x / constexpr-ref1.C
blobf3e4cead14f1af7485944ea6425b4f63298707f7
1 // PR c++/49172
2 // { dg-do compile { target c++11 } }
4 #define SA(X) static_assert((X),#X)
6 constexpr int g() { return 42; }
7 constexpr int(&rg)() = g; // #1
9 SA(rg() == 42);
11 constexpr int i = 24;
12 constexpr int const& ri = i; // #2
14 SA(&ri == &i);
15 SA(ri == 24);
17 void f()
19   constexpr int(&rg)() = g; // #1
21   SA(rg() == 42);
23   constexpr static int i = 24;
24   constexpr int const& ri = i; // #2
26   SA(&ri == &i);
27   SA(ri == 24);
30 template <class T>
31 void f2()
33   constexpr int(&rg)() = g; // #1
35   SA(rg() == 42);
37   constexpr static int i = 24;
38   constexpr int const& ri = i; // #2
40   SA(&ri == &i);
41   SA(ri == 24);
44 template void f2<int>();