|  | // RUN: %clang_cc1 -verify -fsyntax-only %s | 
|  | // Verify the absence of assertion failures when solving calls to unresolved | 
|  | // template member functions. | 
|  |  | 
|  | struct A { | 
|  | template <typename T> | 
|  | static void bar(int) { } // expected-note {{candidate template ignored: couldn't infer template argument 'T'}} | 
|  | }; | 
|  |  | 
|  | struct B { | 
|  | template <int i> | 
|  | static void foo() { | 
|  | int array[i]; | 
|  | A::template bar(array[0]); // expected-error {{no matching function for call to 'bar'}} | 
|  | } | 
|  | }; | 
|  |  | 
|  | int main() { | 
|  | B::foo<4>(); // expected-note {{in instantiation of function template specialization 'B::foo<4>'}} | 
|  | return 0; | 
|  | } |