Looking at the type_erasure example:
typedef any<boost::mpl::vector<copy_constructible<>,
typeid_<>, addable<>>
> any_type;
any_type x(1.1);
any_type y(1);
any_type z(x + y);
Apparently, without placeholders for x and y, this is undefined behavior. Am I interpreting it right? If so, shouldn't it fail to compile or at least throw an exception at runtime?
Thanks,
Alex