Boost logo

Boost :

From: Joel de Guzman (joel_at_[hidden])
Date: 2006-11-20 21:02:47


Joel de Guzman wrote:
> Michael Marcin wrote:

>> causes it to compile so I'm thinking it is a compiler bug that needs to
>> be worked around.
>
> It is indeed a compiler bug, but I think there's more to it than that.
> With your fix, VC7.1 complains: boost\array.hpp(159) : error C3861:
> 'size': identifier not found, even with argument-dependent lookup
> while VC8 is ok. This is not a problem on any other compiler though.
> Also, it's funny that the fusion test for array is also ok. I noted
> that the thing that's causing problems is the header include:
>
> #include <boost/array.hpp>
> #include <boost/fusion/iterator.hpp>
> #include <boost/fusion/sequence.hpp>
>
> Changing this to
>
> #include <boost/array.hpp>
> #include <boost/fusion/sequence/adapted/array.hpp>
> #include <boost/fusion/sequence/intrinsic.hpp>
>
> makes VC++ happy.
>
> I'll investigate further...

Alright. It is a compiler bug indeed. I traced it down to the
operators! (of all things!). I just submitted a workaround for
VC++.

Regards,

-- 
Joel de Guzman
http://www.boost-consulting.com
http://spirit.sf.net

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