
Following on from the recent discussion, we now have: BOOST_NO_IS_ABSTRACT added to the config system, this is likely to cause some new failures with config_test.cpp until we get the macro added to those compiler config files that need it (although Gcc, Visual C++, Borland C++ are already taken care of). is_abstract no longer uses SFINAE when BOOST_NO_IS_ABSTRACT is defined, instead it defaults to the same value as is_polymorphic: the rationale is that "true" is the safe default (if there is one), but since non-polymorphic types obviously can't be abstract, we can safely evaluate to false for those. Users wanting some other behaviour should check for BOOST_NO_IS_ABSTRACT. Robert, is this enough for you to fix the ODR problem in the serialisation lib for is_abstract? John.