diff options
| author | Dimitry Andric <dim@FreeBSD.org> | 2026-02-10 19:54:38 +0000 |
|---|---|---|
| committer | Dimitry Andric <dim@FreeBSD.org> | 2026-04-25 14:14:21 +0000 |
| commit | 3fd796204fe6aa2e8a2b70bb9ea95f7497247fa3 (patch) | |
| tree | dc29d744e61ea4ec981c7a40bc38fc4dd3c3e429 | |
| parent | b99d02027a0fe2e9f9a4aeb6fa3484847ddc5a57 (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
| -rw-r--r-- | contrib/llvm-project/clang/lib/Sema/SemaExpr.cpp | 2 |
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(); |
