> > No, I would prefer > > > > #if BOOST_WORKAROUND(__HP_aCC, <=33900) || > > BOOST_WORKAROUND(__VisualAge, <=12345) > > template <bool cond, typename T> struct enable_if; > > #else > > template <bool, typename> struct enable_if; > > #endif > > > > I already explained the reason: C++ compiler vendors use Boost with > > BOOST_NO_CONFIG for conformance testing. I'd rather see broken > > compilers get fixed than developers forever spending time finding > > workarounds. > > OK, agreed. Given that we use another approach for static constants, > what do you think about: > > template< BOOST_UNUSED_TEMPLATE_PARAMETER( bool, cond ), > BOOST_UNUSED_TEMPLATE_PARAMETER( typename, T ) > > struct enable_if; > > Or should we instead replace BOOST_STATIC_CONSTANT by a #ifdef, too? Or > is BOOST_STATIC_CONSTANT different, probably because there is no "right" > code and a workaround, but there are two equally good ways to declare > static constants?
Yes, I think a distinction can be drawn between the declaration of integer constants and the present issue. As I was recently reminded in another thread, Boost uses BOOST_NO_... for all defects, so the name you propose is perhaps not the most suitable. The construct itself seems satisfactory, I don't have a firm preference between the two forms. Anyway, let's not get stuck in the bicycle shed. ;-) Dave _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost