[Bug c++/112842] New: Constrained parameter pack with trailing param gives no matching function.
jehelset at gmail dot com
gcc-bugzilla@gcc.gnu.org
Mon Dec 4 09:21:27 GMT 2023
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112842
Bug ID: 112842
Summary: Constrained parameter pack with trailing param gives
no matching function.
Product: gcc
Version: 13.2.1
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: jehelset at gmail dot com
Target Milestone: ---
Created attachment 56785
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=56785&action=edit
Minimal reproducer, compile with --std=c++20
Program below doesn't compile:
template<typename T,typename V>
concept U = true;
template<typename... I>
struct V{
static constexpr void f(U<I> auto ...,int){
}
};
int main(){
V<int>::f(0,1); //no matching function for call to ‘V<int>::f(int, int)’
//template argument deduction/substitution failed:
//candidate expects 1 argument, 2 provided
}
If there's no trailing parameter it works ok. clang-trunk seemed to handle it
fine. gcc-trunk also failed this.
More information about the Gcc-bugs
mailing list