Boost logo

Boost :

Subject: Re: [boost] New dependency report
From: Eric Niebler (eniebler_at_[hidden])
Date: 2014-06-13 12:27:04


On 06/06/2014 02:40 PM, Peter Dimov wrote:
> I'm not sure that this is a conforming mpl::bool_ though. It almost is.
> But mpl integral constants need to have a nested ::tag (integral_c_tag),
> and std::integral_constant doesn't have one. Maybe this requirement can
> be dropped. Maybe it can't. I don't know.

Well, mpl can be fixed to not require ::tag, and in fact it should, IMO.
I am in favor of adding an mpl::tag_of metafunction which retrieves the
tag type of the passed mpl entity. It can be specialized for
std::integral_constant to do the right thing. In addition, it would fix
the issues raised here:

http://lists.boost.org/Archives/boost/2009/01/147045.php

and here:

https://svn.boost.org/trac/boost/ticket/7192

I think in the C++11 world, boost type_traits should *all* inherit from
std::true_type. That's easily accomplished by aliasing mpl::true_ to
std::true_type. It fixes everything.

Eric


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk