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