When adding ::value to is_same<...> it works. Thanks Shunsuke for the tip. #include <boost/fusion/sequence.hpp> using namespace std; using namespace boost; int _tmain(int argc, _TCHAR* argv[]) { typedef fusion::map< fusion::pair<int, char>, fusion::pair<char, char>, fusion::pair<double, char> > mymap; BOOST_STATIC_ASSERT((boost::is_same< fusion::result_of::at_key<mymap, int>::type, char&>::value)); return 0; } I have downloaded the CVS Head but here I'm getting an Internal Compiler Error. Is that a known issue? Christian On 3/20/07, shunsuke <pstade.mb@gmail.com> wrote:
Christian Henning wrote:
Thanks for the support. Even BOOST_STATIC_ASSERT isn't working.
#include <boost/static_assert.hpp> #include <boost/fusion/sequence.hpp>
int _tmain(int argc, _TCHAR* argv[]) { typedef boost::fusion::map< boost::fusion::pair<int, char> , boost::fusion::pair<char, char> , boost::fusion::pair<double, char> > mymap;
BOOST_STATIC_ASSERT(( boost::is_same< char, char >));
return 0; }
'::value' seems missing. Well, IIRC, Boost1.34 MPL_ASSERT has a problem around __LINE__ under IDE. That was fixed with CVS Head. But I'm not sure.
-- Shunsuke Sogame
_______________________________________________ Boost-users mailing list Boost-users@lists.boost.org http://lists.boost.org/mailman/listinfo.cgi/boost-users