std::string to_string( tagged_int2 const & x ) { if( x.value()==42 ) return "fourty-two"; else return "bad value"; }
std::string to_string( tagged_int2 const & x ) { return '[' +boost::error_info_name(x) + "] = " + (x.value()==42 ? "fourty-two" : "bad value"); }