Created on 2014-10-17.00:00:00 last changed 115 months ago
Rationale (May, 2015):
This issue is a duplicate os issue 1979.
Consider the following example:
template<typename ...T> struct X { void f(); static int n; }; template<typename T, typename U> using A = T; template<typename ...T> void X<A<T, decltype(sizeof(T))>...>::f() {} template<typename ...T> void X<A<T, decltype(sizeof(T))>...>::n = 0; void g() { X<void>().f(); X<void>::n = 1; }
Should this be valid? The best answer would seem to be to produce an error during instantiation, and that appears to be consistent with the current Standard wording, but there is implementation divergence.
See also issue 2021.
History | |||
---|---|---|---|
Date | User | Action | Args |
2015-05-25 00:00:00 | admin | set | messages: + msg5965 |
2015-05-25 00:00:00 | admin | set | status: open -> dup |
2014-10-17 00:00:00 | admin | create |