Boost logo

Boost :

From: Joerg Walter (jhr.walter_at_[hidden])
Date: 2003-05-24 11:06:21


Hi Michael,

you wrote:

> I just ran into this as well. The problem seems to be
> related
> to MSVC's new strictness with the typename keyword,
> which doesn't interact well with forward declarations
> and nested classes.
>
> I was able to get it to work by adding the line
>
> typename self_type::
>
> just before the return value of every function that caused
> the problem, e.g. in matrix.hpp line 404:
>
> BOOST_UBLAS_INLINE
> typename self_type::
> const_iterator2 begin () const {
> const self_type &m = (*this) ();
> return m.find_first2 (1, index1 (), 0);
> }
>
>
> There are 60 places that needs to be done, but they're all identical.
>
> I don't know how good a fix that really is,

Looks like a pretty good fix (way better than what I had before). Applied to
my local copy.

> and for all I
> know it may break other compilers (including VC7.0).

That's what I'll have to check before committing to CVS.

> But it ought at least let you get on with what you're doing,
> until a new release (compiler or library) that fixes
> the problem for real.

Thanks for your help,

Joerg


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk