|
Boost : |
From: Aleksey Gurtovoy (agurtovoy_at_[hidden])
Date: 2006-07-31 19:45:32
Andy Little writes:
> The boost type_traits integral constant is derived from
> mpl::integral_c which has a tag type member, without which
> boost:::integral_constant wouldnt work with mpl types such as
> equal_to. The std version doesnt specify the tag, nor does the boost
> type_traits version in its documentation. Without the tag,
> boost::integral_constant would not work with mpl types such as
> equal_to as demonstrated in another mail in this thread. Therefore
> changing from boost::integral_constant to std::integral_constant
> will break code that uses mpl. Maybe its not important, but the
> innocent std:: integral_constant will appear to be bug ridden.
Ideally, I'd like to link the '::tag' requirement with the mixed-type
arithmetic operations (for which the tag was introduced) and move it
out of the Integral Constant requirements into a corresponding
concept. Either way, making the above work is not a major issue.
-- Aleksey Gurtovoy MetaCommunications Engineering
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk