> I have two questions about the use of the typename-keyword when using
> template-parameter dependent types.
>
> 1. Consider the following code:
>
>     template< class T >
>     {
>         typedef typename A::foo t;
>     };
>
> IIRC there are some compilers that only compile the above without the
> typename keyword? Is that correct (I only have the Intel and GCC compilers
> at hand, so I can't check)

Boost code always uses the typename: there are no current compilers that
don't support it IMO.

> 2. Can the BOOST_STATIC_CONSTANT macro deal with the following?
>
>     template< class T >
>     {
>         BOOST_STATIC_CONSTANT( typename T::foo, bar = T::value );
>     };
>
> i.e. the extra typename keyword?

Um I hope so, but why not typedef the typename first which removes the
problem?

John Maddock
http://ourworld.compuserve.com/homepages/john_maddock/index.htm


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

Reply via email to