Thanks for pointing that out - makes sense - sorry about that! Faisal Vali
On Sat, Mar 26, 2016 at 4:11 PM, Richard Smith <rich...@metafoo.co.uk> wrote: > On 26 Mar 2016 1:52 p.m., "Faisal Vali via cfe-commits" > <cfe-commits@lists.llvm.org> wrote: >> >> Author: faisalv >> Date: Sat Mar 26 15:46:45 2016 >> New Revision: 264522 >> >> URL: http://llvm.org/viewvc/llvm-project?rev=264522&view=rev >> Log: >> [NFC] > > For future reference, a change to diagnostic wording does count as a > functional change :) > >> Tweak diagnostic for template template arguments, to include template >> aliases. >> >> The prior diagnostic (err_template_arg_not_class_template) would state >> that the template argument to a template template parameter can only be a >> class template, when it can also be a template alias. The newly renamed >> diagnostic (err_template_arg_not_valid_template) mentions template aliases. >> >> >> Modified: >> cfe/trunk/include/clang/Basic/DiagnosticSemaKinds.td >> cfe/trunk/lib/Sema/SemaTemplate.cpp >> >> Modified: cfe/trunk/include/clang/Basic/DiagnosticSemaKinds.td >> URL: >> http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Basic/DiagnosticSemaKinds.td?rev=264522&r1=264521&r2=264522&view=diff >> >> ============================================================================== >> --- cfe/trunk/include/clang/Basic/DiagnosticSemaKinds.td (original) >> +++ cfe/trunk/include/clang/Basic/DiagnosticSemaKinds.td Sat Mar 26 >> 15:46:45 2016 >> @@ -3570,8 +3570,8 @@ def note_template_unnamed_type_here : No >> "unnamed type used in template argument was declared here">; >> def err_template_arg_overload_type : Error< >> "template argument is the type of an unresolved overloaded function">; >> -def err_template_arg_not_class_template : Error< >> - "template argument does not refer to a class template or template " >> +def err_template_arg_not_valid_template : Error< >> + "template argument does not refer to a class or alias template, or >> template " >> "template parameter">; >> def note_template_arg_refers_here_func : Note< >> "template argument refers to function template %0, here">; >> @@ -5993,10 +5993,10 @@ let CategoryName = "Lambda Issue" in { >> "cannot deduce type for lambda capture %0 from initializer list">; >> >> // C++1z '*this' captures. >> - def warn_cxx14_compat_star_this_lambda_capture : Warning< >> - "by value capture of '*this' is incompatible with C++ standards >> before C++1z">, >> - InGroup<CXXPre1zCompat>, DefaultIgnore; >> - def ext_star_this_lambda_capture_cxx1z : ExtWarn< >> + def warn_cxx14_compat_star_this_lambda_capture : Warning< >> + "by value capture of '*this' is incompatible with C++ standards >> before C++1z">, >> + InGroup<CXXPre1zCompat>, DefaultIgnore; >> + def ext_star_this_lambda_capture_cxx1z : ExtWarn< >> "capture of '*this' by copy is a C++1z extension">, InGroup<CXX1z>; >> } >> >> >> Modified: cfe/trunk/lib/Sema/SemaTemplate.cpp >> URL: >> http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/SemaTemplate.cpp?rev=264522&r1=264521&r2=264522&view=diff >> >> ============================================================================== >> --- cfe/trunk/lib/Sema/SemaTemplate.cpp (original) >> +++ cfe/trunk/lib/Sema/SemaTemplate.cpp Sat Mar 26 15:46:45 2016 >> @@ -800,7 +800,7 @@ Decl *Sema::ActOnTemplateTemplateParamet >> // However, it isn't worth doing. >> TemplateArgumentLoc DefaultArg = translateTemplateArgument(*this, >> Default); >> if (DefaultArg.getArgument().getAsTemplate().isNull()) { >> - Diag(DefaultArg.getLocation(), >> diag::err_template_arg_not_class_template) >> + Diag(DefaultArg.getLocation(), >> diag::err_template_arg_not_valid_template) >> << DefaultArg.getSourceRange(); >> return Param; >> } >> @@ -5352,7 +5352,7 @@ bool Sema::CheckTemplateArgument(Templat >> !isa<TypeAliasTemplateDecl>(Template)) { >> assert(isa<FunctionTemplateDecl>(Template) && >> "Only function templates are possible here"); >> - Diag(Arg.getLocation(), diag::err_template_arg_not_class_template); >> + Diag(Arg.getLocation(), diag::err_template_arg_not_valid_template); >> Diag(Template->getLocation(), >> diag::note_template_arg_refers_here_func) >> << Template; >> } >> >> >> _______________________________________________ >> cfe-commits mailing list >> cfe-commits@lists.llvm.org >> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits