3 // Origin: Ivan Godard <igodard@pacbell.net>
4 // Wolfgang Bangerth <bangerth@dealii.org>
6 // PR c++/17344: Substitution failure is not an error
7 // for default template argument
9 template <class> struct intTraits;
11 template<> struct intTraits<int> {
12 static const int i = 0;
15 template<typename E, E i = intTraits<E>::i> struct A {};
18 template <template <typename> class X> S(X<void>);