[all-commits] [llvm/llvm-project] 3e512b: [Clang][Concepts] Fix the constraint equivalence c...
Younan Zhang via All-commits
all-commits at lists.llvm.org
Mon Sep 23 23:23:00 PDT 2024
Branch: refs/heads/release/19.x
Home: https://github.com/llvm/llvm-project
Commit: 3e512ba17d90d5ab5382bae61a3e5762d2e3f42a
https://github.com/llvm/llvm-project/commit/3e512ba17d90d5ab5382bae61a3e5762d2e3f42a
Author: Younan Zhang <zyn7109 at gmail.com>
Date: 2024-09-24 (Tue, 24 Sep 2024)
Changed paths:
M clang/lib/Sema/SemaConcept.cpp
M clang/test/SemaTemplate/concepts-out-of-line-def.cpp
Log Message:
-----------
[Clang][Concepts] Fix the constraint equivalence checking involving parameter packs (#102131)
We established an instantiation scope in order for constraint
equivalence checking to properly map the uninstantiated parameters.
That mechanism mapped even packs to themselves. Consequently, parameter
packs e.g. appearing in a function call, were not expanded. So they
would end up becoming `SubstTemplateTypeParmPackType`s that circularly
depend on the canonical declaration of the function template, which is
not yet determined, hence the spurious error.
No release note as I plan to backport it to 19.
Fixes https://github.com/llvm/llvm-project/issues/101735
---------
Co-authored-by: cor3ntin <corentinjabot at gmail.com>
(cherry picked from commit e6974daa7bc100c8b88057d50f3ec3eca7282243)
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