1*67e74705SXin Li // RUN: %clang_cc1 -verify -fsyntax-only %s 2*67e74705SXin Li // Verify the absence of assertion failures when solving calls to unresolved 3*67e74705SXin Li // template member functions. 4*67e74705SXin Li 5*67e74705SXin Li struct A { 6*67e74705SXin Li template <typename T> barA7*67e74705SXin Li static void bar(int) { } // expected-note {{candidate template ignored: couldn't infer template argument 'T'}} 8*67e74705SXin Li }; 9*67e74705SXin Li 10*67e74705SXin Li struct B { 11*67e74705SXin Li template <int i> fooB12*67e74705SXin Li static void foo() { 13*67e74705SXin Li int array[i]; 14*67e74705SXin Li A::template bar(array[0]); // expected-error {{no matching function for call to 'bar'}} 15*67e74705SXin Li } 16*67e74705SXin Li }; 17*67e74705SXin Li main()18*67e74705SXin Liint main() { 19*67e74705SXin Li B::foo<4>(); // expected-note {{in instantiation of function template specialization 'B::foo<4>'}} 20*67e74705SXin Li return 0; 21*67e74705SXin Li } 22