[clang] WIP: Improve the -Wundefined-func-template diagnostic note for invisible template functions (PR #129031)
via cfe-commits
cfe-commits at lists.llvm.org
Thu Feb 27 02:20:22 PST 2025
github-actions[bot] wrote:
<!--LLVM CODE FORMAT COMMENT: {clang-format}-->
:warning: C/C++ code formatter, clang-format found issues in your code. :warning:
<details>
<summary>
You can test this locally with the following command:
</summary>
``````````bash
git-clang-format --diff 262e4c19878175780c88da867e88fc4e202d4788 ccd5da1bdc4c80bd3461458fc1f4360d766fb6e2 --extensions cpp,h -- clang/include/clang/Sema/Sema.h clang/lib/Sema/SemaTemplate.cpp clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
``````````
</details>
<details>
<summary>
View the diff from clang-format here.
</summary>
``````````diff
diff --git a/clang/include/clang/Sema/Sema.h b/clang/include/clang/Sema/Sema.h
index 8916124ab7..dfe1c03422 100644
--- a/clang/include/clang/Sema/Sema.h
+++ b/clang/include/clang/Sema/Sema.h
@@ -11183,14 +11183,11 @@ public:
/// Determine whether we would be unable to instantiate this template (because
/// it either has no definition, or is in the process of being instantiated).
- bool DiagnoseUninstantiableTemplate(SourceLocation PointOfInstantiation,
- NamedDecl *Instantiation,
- bool InstantiatedFromMember,
- const NamedDecl *Pattern,
- const NamedDecl *PatternDef,
- TemplateSpecializationKind TSK,
- bool Complain = true,
- bool* Unreachable = nullptr);
+ bool DiagnoseUninstantiableTemplate(
+ SourceLocation PointOfInstantiation, NamedDecl *Instantiation,
+ bool InstantiatedFromMember, const NamedDecl *Pattern,
+ const NamedDecl *PatternDef, TemplateSpecializationKind TSK,
+ bool Complain = true, bool *Unreachable = nullptr);
/// DiagnoseTemplateParameterShadow - Produce a diagnostic complaining
/// that the template parameter 'PrevDecl' is being shadowed by a new
diff --git a/clang/lib/Sema/SemaTemplate.cpp b/clang/lib/Sema/SemaTemplate.cpp
index c9cfba3131..9a0e37f344 100644
--- a/clang/lib/Sema/SemaTemplate.cpp
+++ b/clang/lib/Sema/SemaTemplate.cpp
@@ -759,14 +759,11 @@ Sema::BuildDependentDeclRefExpr(const CXXScopeSpec &SS,
TemplateArgs);
}
-bool Sema::DiagnoseUninstantiableTemplate(SourceLocation PointOfInstantiation,
- NamedDecl *Instantiation,
- bool InstantiatedFromMember,
- const NamedDecl *Pattern,
- const NamedDecl *PatternDef,
- TemplateSpecializationKind TSK,
- bool Complain /*= true*/,
- bool* Unreachable) {
+bool Sema::DiagnoseUninstantiableTemplate(
+ SourceLocation PointOfInstantiation, NamedDecl *Instantiation,
+ bool InstantiatedFromMember, const NamedDecl *Pattern,
+ const NamedDecl *PatternDef, TemplateSpecializationKind TSK,
+ bool Complain /*= true*/, bool *Unreachable) {
assert(isa<TagDecl>(Instantiation) || isa<FunctionDecl>(Instantiation) ||
isa<VarDecl>(Instantiation));
``````````
</details>
https://github.com/llvm/llvm-project/pull/129031
More information about the cfe-commits
mailing list