> > 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

Reply via email to