|
Boost : |
From: Eric Friedman (ebf_at_[hidden])
Date: 2003-11-10 20:24:34
For a while now the variant regression tests have turned with up errors
such as the following:
error C2653: 'Iterator' : is not a class or namespace name
D:\boost6\main\boost\boost\mpl\aux_\deref_wknd.hpp(28) : see
declaration of 'Iterator'
D:\boost6\main\boost\boost\variant\variant.hpp(124) : see
reference to class template instantiation
'boost::mpl::aux::deref_wknd<Iterator>' being compiled
with
[
Iterator=boost::detail::variant::max_value<Sequence,F>::max_it
]
Looking at deref_wknd.hpp, I noticed that the ETI workaround "fixes" the
bug by specializing on int. My understanding of MSVC7 though is that
sometimes the ETI bug is more complicated, passing a type convertible to
int instead of int itself.
So I don't know for sure that this is an ETI problem, but seeing as the
tests compile fine under MSVC6, my guess is that the error is the
MSVC7-specific version of the ETI bug.
Assuming I am right, I know msvc_eti_base is available to solve problems
like this. However, since I don't have VC7 to test, I don't want to make
the patch myself. ... Aleksey?
Thanks,
Eric
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk