>From: "Paul Mensonides" <[EMAIL PROTECTED]>

> > 14.3.1/2 [quote--
> >
> > A local type, a type with no linkage, an unnamed type or a type
compounded
> > from any of these types shall not be used as a template-argument for a
> > template type-parameter.
> >
> > --end quote]
>
> Incidently, an unnamed type has no linkage.  Secondly, even if it is
named,
> it has internal linkage if it is member of a class with internal linkage:
>
> namespace {
>
> template<class T> struct X {
>     enum value_t { value = 10 };
> };

Right, but members of anonymous namespaces does have external linkage, so
this is not an example of that. That's an advantage over the deprecated
file-scope static, which does have internal linkage, and is therefore
unusable as template parameters.

The program you give compiles and runs without errors.


Regards,

Terje

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost

Reply via email to