Boost logo

Boost Users :

From: David Abrahams (dave_at_[hidden])
Date: 2003-05-20 06:51:45


Pete Cilliers <pete.cilliers_at_[hidden]> writes:

> I get the following error when trying to use the filesystem library on MSVC
> 6.0 :
>
> error C2061: syntax error : identifier 'BOOST_DEDUCED_TYPENAME'
>
> The line causing the problem is in the \detail\iterator.hpp file:
>
> template <class T>
> type_traits::yes_type is_mutable_iterator_helper(T const*,
> BOOST_DEDUCED_TYPENAME T::value_type*);
>
> I have run a config Test and both BOOST_DEDUCED_TYPENAME and
> BOOST_NO_DEDUCED_TYPENAME are defined but have no value.

Clearly not, in the code you're compiling, or you wouldn't see a
syntax error about that identifier. It would just melt away into
nothing before the parser got to look at it.

> Since MSVC 6.0
> supports the 'typename' keyword

It barely does. BOOST_DEDUCED_TYPENAME is there (and empty on vc6)
because in many contexts it is rejected incorrectly.

> I would think that the declaration above in the iterator.hpp file
> should use 'typename' rather than BOOST_DEDUCED_TYPENAME. Anyone
> else experience this problem?

I think it's just missing #include <boost/config.hpp>

-- 
Dave Abrahams
Boost Consulting
www.boost-consulting.com

Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net