Static data members in template declarations
Martin von Loewis
martin@mira.isdn.cs.tu-berlin.de
Mon Nov 2 05:08:00 GMT 1998
> But this is my point; you are asking that the compiler figure this out
> while parsing the definition of the array.
I could not actually locate a statement in the FDIS that would clarify
this. Closest I found is in [basic.def.odr]/5.
Consider we have two translation units, one contains the declaration
and
int S<T>::k[S<T>::a];
and the other contains
int S<T>::k[a];
Such a program would be ill-formed, since the definitions do not
consist of the same sequence of tokens. It seems that Mark has a
similar requirement in mind.
OTOH, the requirement for redeclaration/definition of functions is
much weaker. [dcl.fct]/3 says
>> All declarations for a function with a given parameter list shall
>> agree exactly both in the type of the value returned and in the
>> number and type of parameters;
I'm not sure under which conditions template functions agree in the
type of parameters.
Regards,
Martin
More information about the Libstdc++
mailing list