[all-commits] [llvm/llvm-project] b3d09d: [clang] ItaniumMangle: fix mangling for unresolved...
Matheus Izvekov via All-commits
all-commits at lists.llvm.org
Thu Apr 10 20:52:11 PDT 2025
Branch: refs/heads/users/mizvekov/subst-fix-mangling
Home: https://github.com/llvm/llvm-project
Commit: b3d09dc73d4c36fa254a65a45ad5a777f1a090a2
https://github.com/llvm/llvm-project/commit/b3d09dc73d4c36fa254a65a45ad5a777f1a090a2
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2025-04-11 (Fri, 11 Apr 2025)
Changed paths:
M clang/lib/AST/ItaniumMangle.cpp
M clang/test/CodeGenCXX/mangle.cpp
Log Message:
-----------
[clang] ItaniumMangle: fix mangling for unresolved types
This fixes a regression introduced here: https://github.com/llvm/llvm-project/pull/132748
which was originally reported here: https://github.com/llvm/llvm-project/pull/132748#issuecomment-2791012454
Some time in the clang-20 time frame, we had removed subst* nodes produced
from template type alias instantiation.
This ended up accidentally fixing an issue where the result from
an alias template substitution is mistaken for the susbtitution
of an outer non-alias template, incorrectly applying the unresolved-type
production to it.
This fixes it by ignoring subst* nodes produced from type aliases.
Though builtin templates currently don't place subst* nodes, if
we ever decide to place them, this fix should cover them as well.
No release notes since this regression was never released.
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