aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDimitry Andric <dim@FreeBSD.org>2026-02-10 19:54:38 +0000
committerDimitry Andric <dim@FreeBSD.org>2026-05-29 22:59:37 +0000
commit179029b4d82e709f348a6bec2d8e7221664358d9 (patch)
treee4ef218707c287aca20b4fa4347f49c5260bf3e3
parente4ec2270fd25cfe7db492ffaba1714d5a5f1aed3 (diff)
Merge commit 924f773f5e26 from llvm git (by Younan Zhang):
[Clang] Don't diagnose missing members when looking at the instantiating class template (#180725) The perfect matching patch revealed another bug where recursive instantiations could lead to the escape of SFINAE errors, as shown in the issue. Fixes https://github.com/llvm/llvm-project/issues/179118 This fixes compile errors in the www/qt5-webengine port. PR: 292067 MFC after: 1 month (cherry picked from commit 3fd796204fe6aa2e8a2b70bb9ea95f7497247fa3)
-rw-r--r--contrib/llvm-project/clang/lib/Sema/SemaExpr.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/contrib/llvm-project/clang/lib/Sema/SemaExpr.cpp b/contrib/llvm-project/clang/lib/Sema/SemaExpr.cpp
index 5421e9562c8b..ae86c4ce670d 100644
--- a/contrib/llvm-project/clang/lib/Sema/SemaExpr.cpp
+++ b/contrib/llvm-project/clang/lib/Sema/SemaExpr.cpp
@@ -2934,7 +2934,7 @@ ExprResult Sema::BuildQualifiedDeclarationNameExpr(
// members were likely supposed to be inherited.
DeclContext *DC = computeDeclContext(SS);
if (const auto *CD = dyn_cast<CXXRecordDecl>(DC))
- if (CD->isInvalidDecl())
+ if (CD->isInvalidDecl() || CD->isBeingDefined())
return ExprError();
Diag(NameInfo.getLoc(), diag::err_no_member)
<< NameInfo.getName() << DC << SS.getRange();