================ @@ -885,16 +885,19 @@ bool Sema::DiagnoseUninstantiableTemplate(SourceLocation PointOfInstantiation, /// that the template parameter 'PrevDecl' is being shadowed by a new /// declaration at location Loc. Returns true to indicate that this is /// an error, and false otherwise. -void Sema::DiagnoseTemplateParameterShadow(SourceLocation Loc, Decl *PrevDecl) { +void Sema::DiagnoseTemplateParameterShadow(SourceLocation Loc, Decl *PrevDecl, + bool IssueWarning) { assert(PrevDecl->isTemplateParameter() && "Not a template parameter"); // C++ [temp.local]p4: // A template-parameter shall not be redeclared within its // scope (including nested scopes). // // Make this a warning when MSVC compatibility is requested. - unsigned DiagId = getLangOpts().MSVCCompat ? diag::ext_template_param_shadow - : diag::err_template_param_shadow; + unsigned DiagId = getLangOpts().MSVCCompat + ? diag::ext_template_param_shadow + : (IssueWarning ? diag::ext_compat_template_param_shadow ---------------- cor3ntin wrote:
A comment there too would not hurt https://github.com/llvm/llvm-project/pull/79683 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits