[all-commits] [llvm/llvm-project] d18287: [clang] CTAD alias: fix the transformation for the...
Haojian Wu via All-commits
all-commits at lists.llvm.org
Mon May 13 00:33:57 PDT 2024
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: d182877ba3f5ad93e061f68a9ecce38cb8cec418
https://github.com/llvm/llvm-project/commit/d182877ba3f5ad93e061f68a9ecce38cb8cec418
Author: Haojian Wu <hokein.wu at gmail.com>
Date: 2024-05-13 (Mon, 13 May 2024)
Changed paths:
M clang/lib/Sema/SemaTemplate.cpp
A clang/test/AST/ast-dump-ctad-alias.cpp
M clang/test/SemaCXX/cxx20-ctad-type-alias.cpp
Log Message:
-----------
[clang] CTAD alias: fix the transformation for the require-clause expr (#90961)
In the clang AST, constraint nodes are deliberately not instantiated
unless they are actively being evaluated. Consequently, occurrences of
template parameters in the require-clause expression have a subtle
"depth" difference compared to normal occurrences in places, such as
function parameters. When transforming the require-clause, we must take
this distinction into account.
The existing implementation overlooks this consideration. This patch is
to rewrite the implementation of the require-clause transformation to
address this issue.
Fixes #90177
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