https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91798
Andrew Pinski <pinskia at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |SUSPENDED
--- Comment #5 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
https://www.open-std.org/jtc1/sc22/wg21/docs/cwg_active.html#1647
And maybe others.
Note my other testcase was a full specialization rather than a partial.
Here is one with a partial which removes the variadic :
```
//Get type parameter at given index.
template<auto i, class T>
struct param
{
static_assert(i > 0, "Index into parameter pack cannot be negative!");
using type = typename param<i - 1, T>::type;
};
template<class T>
struct param<0, T>
{
using type = T;
};
int main()
{
typename param<0u, int>::type x = 'a';
static_cast<void>(x);
}
```
Both GCC and EDG agree on this while clang and MSVC disagree. This is
definitely DR 1647 then.
So suspended as the defect report is still active.