1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
// Issue #2085. template<typename T> struct Foo; template<typename T, typename U> struct Bar {}; template<typename T> struct Bar<T, void> { using BarDependent = typename Foo<T>::Dependent; void method(const BarDependent &); }; template<typename T> void Bar<T, void>::method(const BarDependent &) {}