Created on 1999-05-11.00:00:00 last changed 263 months ago
Proposed resolution (10/99): Remove the three uses of the words "non-type" in 13.7.7.2 [temp.over.link] paragraph 7.
13.7.7.2 [temp.over.link] , paragraphs 5 and 6, describes equivalence and functional equivalence for expressions involving template parameters. As a note in paragraph 5 points out, such expressions may involve type parameters as well as non-type parameters.
Paragraph 7, however, describes the equivalence of function templates only with respect to non-type template parameters. It appears to be unspecified how to determine the equivalence of template functions whose types involve expressions that use template type parameters.
template <int I> struct S { }; // The following two declarations are equivalent: template <int I> void f(S<I>); template <int J> void f(S<J>); // The IS doesn't say whether these are equivalent: template <class T> void f(S<sizeof(T)>); template <class T> void f(S<sizeof(T)>);
Proposed resolution (10/99): Remove the three uses of the words "non-type" in 13.7.7.2 [temp.over.link] paragraph 7.
History | |||
---|---|---|---|
Date | User | Action | Args |
2003-04-25 00:00:00 | admin | set | status: dr -> tc1 |
2000-05-21 00:00:00 | admin | set | status: open -> dr |
2000-02-23 00:00:00 | admin | set | messages: + msg302 |
1999-05-11 00:00:00 | admin | create |