
Hi Michael, You need brackets around 'is_base_of' expression , because there is a colon in it. "request type is not a node" has to be changed to be a legal C++ identifier token as well ( http://www.boost.org/doc/libs/1_55_0/libs/mpl/doc/refmanual/assert-msg.html ). BOOST_MPL_ASSERT_MSG( (std::is_base_of<xnode, Node>::value) , requested_type_is_not_a_node , (types<node_type>) ); Kris On Wed, Jul 23, 2014 at 2:04 PM, Michael Powell <mwpowellhtx@gmail.com> wrote:
Hello,
I would like to add some diagnostic messages during compile time, potentially enumerating one or more types as well.
static_assert is great for simple messages but falls a bit short due to inability to list types and such.
I wonder if BOOST_MPL_ASSERT_MSG is the right answer, however, I am getting the following errors:
BOOST_MPL_ASSERT_MSG( std::is_base_of<xnode, Node>::value , "requested type is not a node" , (types<node_type>) );
1>i:\source\kingdom software\cppxml\xml\domain\parts\xnode.h(111): warning C4002: too many actual parameters for macro 'BOOST_MPL_ASSERT_MSG'
It's an error message, but not the one(s) I am expecting. Do I need to enable something, preprocessor definition, something like that?
Best regards,
Michael Powell _______________________________________________ Boost-users mailing list Boost-users@lists.boost.org http://lists.boost.org/mailman/listinfo.cgi/boost-users