1 // RUN: %clang_cc1 -fsyntax-only -verify %s
2 
3 // <rdar://problem/9173693>
4 template< bool C > struct assert { };
5 template< bool > struct assert_arg_pred_impl { }; // expected-note 2 {{declared here}}
6 template< typename Pred > assert<false> assert_not_arg( void (*)(Pred), typename assert_arg_pred<Pred>::type );
7 // expected-error@-1 {{did you mean 'assert_arg_pred_impl'}}
8 // expected-error@-2 {{template argument for non-type template parameter must be an expression}}
9