]> gcc.gnu.org Git - gcc.git/blame - gcc/testsuite/g++.dg/cpp0x/alias-decl-67.C
PR c++/92590 - wrong handling of inherited default ctor.
[gcc.git] / gcc / testsuite / g++.dg / cpp0x / alias-decl-67.C
CommitLineData
5a58e967
JM
1// PR c++/90047
2// { dg-do compile { target c++11 } }
3
4template <int a> struct b { static constexpr int c = a; };
5template <typename> struct aa;
6template <typename...> struct d;
7template <typename e, typename f, typename g, typename... h>
8struct d<e, f, g, h...> : aa<e>::i {};
9template <typename> struct j;
10template <typename k, long l> struct j<k[l]> : b<true> {};
11struct m {
12 typedef b<0> i;
13};
14template <typename> struct n : m::i {};
15template <bool> struct o;
16template <typename p> struct aa { typedef p i; };
17template <bool ab> using ac = typename o<ab>::i; // { dg-error "incomplete" }
18class q {
19 template <typename k, typename> using ad = ac<d<n<k>, int, int>::c>;
20 template <typename k, typename = ad<k, void>> q(k &);
21};
22template <typename r> struct s {
23 s(r) { t; }
24 template <ac<!j<r>::c> *> void t();
25};
26class I {
27 friend char operator<<(char p1, I p2) { return p1 << p2; }
28 q ag;
29};
30int main() { s<char[10]> a = (char *)""; }
This page took 0.743823 seconds and 5 git commands to generate.