-
Notifications
You must be signed in to change notification settings - Fork 13.4k
Clang++ fails to match template template parameters as function arguments #111363
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Labels
clang:frontend
Language frontend issues, e.g. anything involving "Sema"
confirmed
Verified by a second party
regression:19
Regression in 19 release
Comments
@llvm/issue-subscribers-clang-frontend Author: None (PiliLatiesa)
Clang++ trunk started rejecting the following testcase (adapted from https://eel.is/c++draft/temp#arg.template-example-3). Clang 19 accepts it. It's a recent regression.
template <template <class, class...> class TT, class T1, class... Rest>
void f(TT<T1, Rest...> const &) {}
template <typename T1> struct A {};
int main()
{
A<int> a;
f(a); // bogus "no matching function for call to 'f'"
} |
Yes #96023 (comment) |
This will be fixed by #111457 |
zmodem
added a commit
that referenced
this issue
Oct 9, 2024
This caused Clang to reject valid code, see discussion on the PR #96023 (comment) and #111363 This reverts commit 6afe567 and follow-up commit 9abb97f.
DanielCChen
pushed a commit
to DanielCChen/llvm-project
that referenced
this issue
Oct 16, 2024
…te calls. (llvm#111457) Clang previously missed implementing P0522 pack matching for deduced function template calls. Fixes llvm#111363
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
clang:frontend
Language frontend issues, e.g. anything involving "Sema"
confirmed
Verified by a second party
regression:19
Regression in 19 release
Clang++ trunk started rejecting the following testcase (adapted from https://eel.is/c++draft/temp#arg.template-example-3). Clang 19 accepts it. It's a recent regression.
The text was updated successfully, but these errors were encountered: