#
2e1ad939 |
| 13-Jun-2024 |
Matheus Izvekov <mizvekov@gmail.com> |
[clang] fix broken canonicalization of DeducedTemplateSpecializationType (#95202)
This reverts the functional elements of commit
3e78fa860235431323aaf08c8fa922d75a7cfffa and redoes it, by fixing th
[clang] fix broken canonicalization of DeducedTemplateSpecializationType (#95202)
This reverts the functional elements of commit
3e78fa860235431323aaf08c8fa922d75a7cfffa and redoes it, by fixing the
true root cause of #61317.
A TemplateName can be non-canonical; profiling it based on the canonical
name would result in inconsistent preservation of as-written information
in the AST.
The true problem in #61317 is that we would not consider the methods
with requirements expression which contain DTSTs as the same in relation
to merging of declarations when importing modules.
The expressions would never match because they contained DTSTs pointing
to different redeclarations of the same class template, but since
canonicalization for them was broken, their canonical types would not
match either.
---
No changelog entry because #61317 was already claimed as fixed in
previous release.
show more ...
|