summaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.dg/cpp0x/initlist-overload1.C
blob: 12bb606ce67c16e515d6e475cd8b680e5005ca08 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
// PR c++/94124 - wrong conversion error with non-viable overload.
// { dg-do compile { target c++11 } }

template <int N> struct A { typedef int _Type[N]; };
template <int N> struct B { typename A<N>::_Type _M_elems; };
class C { };
struct D {
  D(C);
};

struct F {
  F(B<2>);
  F(D); // This overload should not be viable.
};
F fn1() { return {{{0}}}; }