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, and for all I
know it may break other compilers (including VC7.0).
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.
 
Hope it helps---
 
Michael
 
 
"Victor A. Wagner, Jr." <vawjr@rudbek.com> wrote in message news:4.3.1.2.20030520235606.02ca7f38@mail.rudbek.com...
> using an fresh update from the CVS
> I can barely get anything to compile.  Actually I don't know if anything IS
> compiling.
> I get over 1000 errors like this when I run the jamfile in the status directory
>
> C:\Projects\boost\boost\numeric\ublas\matrix_proxy.hpp(4945) : error C2027:
> use of undefined type 'boost::numeric::ublas::matrix_indirect<M,IA>::iterator2'
>
> it seems that EVERY error mentions ::iterator2 or ::const_iterator2
>
> I don't know when this started happening.
>
> Victor A. Wagner Jr.      http://rudbek.com
> The five most dangerous words in the English language:
>                "There oughta be a law"
>
> _______________________________________________
> Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
>


Do you Yahoo!?
The New Yahoo! Search - Faster. Easier. Bingo.