id summary reporter owner description type status milestone component version severity resolution keywords cc 443 no Boolean conversion for boost::rational Daryle Walker Jonathan Turkanis "{{{ The boost::rational class template, in header file , does not support conversion to a Boolean value. It does have an ""operator !"" defined, though. It is a surprise for a type to have one of these operations but not the other. Currently code like ""if ( !r )"" works but not ""if ( r )"", which should be expected. A solution is to add a conversion operator to a type that can be used in Boolean contexts, but as little else as possible. A suggestion is to use a pointer-to-member (to data or function) type that is unique to each version of boost::rational, where the exact values are private. }}}" Bugs closed None None Fixed