I just tried to build this code in visual studio 2005, and got error:
error C3201: the template parameter list for class template
'boost::mpl::bind2::apply' does not match the template
parameter list for template parameter 'boolfunc'
This code works fine with gcc, and boost mpl portability page
(http://www.boost.org/libs/mpl/doc/tutorial/portability.html) says my
version of visual studio should be able to compile this. However, it
appears to think the lambda< ... >::type::apply is not
a metafunction. Any help will be greatly appreciated.
-Matt Brown
#include <iostream>
#include
#include
#include
template
class test
{
public:
static void print()
{
if(boolfunc<int>::type::value)
{
std::cout << "int: true\n";
}
}
};
int main(void)
{
test<
boost::mpl::lambda<
boost::is_same
>::type::apply
>::print();
};