[all-commits] [llvm/llvm-project] 9645f1: [clang] fix P3310 overload resolution flag propaga...
Matheus Izvekov via All-commits
all-commits at lists.llvm.org
Sat Feb 1 19:05:23 PST 2025
Branch: refs/heads/users/mizvekov/clang-fix-P3310-strict-match-incomplete-types
Home: https://github.com/llvm/llvm-project
Commit: 9645f14d3b9aa016cb45ca27ad0425adbbc0e1c6
https://github.com/llvm/llvm-project/commit/9645f14d3b9aa016cb45ca27ad0425adbbc0e1c6
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2025-02-02 (Sun, 02 Feb 2025)
Changed paths:
M clang/include/clang/AST/DeclTemplate.h
M clang/include/clang/Sema/Sema.h
M clang/lib/AST/ASTImporter.cpp
M clang/lib/AST/DeclTemplate.cpp
M clang/lib/AST/TextNodeDumper.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
M clang/lib/Sema/SemaType.cpp
M clang/lib/Serialization/ASTReaderDecl.cpp
M clang/lib/Serialization/ASTWriterDecl.cpp
M clang/test/AST/ast-dump-templates.cpp
M clang/test/SemaTemplate/cwg2398.cpp
Log Message:
-----------
[clang] fix P3310 overload resolution flag propagation
Class templates might be only instantiated when they are required
to be complete, but checking the template args against the primary
template is immediate.
This result is cached so that later when the class is instantiated,
checking against the primary template is not repeated.
The 'MatchedPackOnParmToNonPackOnArg' flag is also produced upon
checking against the primary template, so it needs to be cached
in the specialziation as well.
This fixes a bug which has not been in any release, so there are no
release notes.
Fixes #125290
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list