#include #include int main() { try { unsigned short a = 0; int b = boost::numeric_cast( a ); } catch( const boost::bad_numeric_cast& ) { } return 0; }