
"John Maddock" <john@johnmaddock.co.uk> writes:
integral_constant<bool,b> derives from mpl::bool_<b> for backwards compatibility.
For still more backward compatibility we ought to have a conversion in the other direction.
I realised that right after I posted (as usual, post first think later. Doh!)
Are there any drawbacks to making the constructors of these types non-trivial?
Only the usual ones, I guess ;-)
Stupid question but why doesn't your function do:
template <class T> typename is_fundamental<T>::type f(T) { return is_fundamental<T>::type(); }
Stupid answer: broken compiler workaround.
Anyway, this isn't a big deal. Maybe not even worth acting on.
OK, how about just using "is_fundamental<T>()" directly, no need to access it's ::type member at all really ?
It's not an obstacle for me at the moment, so I'm okay -- but it did surprise me. -- Dave Abrahams Boost Consulting www.boost-consulting.com