id summary reporter owner description type status milestone component version severity resolution keywords cc 7138 Output of a UDT with autoprefix requires specialization of auto_prefix_norm Paul A. Bristow Steven Watanabe "Output of a UDT with autoprefix requires specialization of auto_prefix_norm for the scaling to take place. For example, to get expected scaling to kilometers from quantity > biglen(measurement(12345.0,123.0)*meters); autoscaled = 12.345(+/-0.123) km This can be achieved by adding this to measurement.hpp (where Y is the type of UDT) {{{ // Specialization of autoprefix_norm for UDTboost::units::measurement // See io.hpp. // This specialization is required to get autoprefix to work with this class. template typename autoprefix_norm_impl, true>::type autoprefix_norm(const boost::units::measurement & arg) { return autoprefix_norm_impl::call(arg); } }}} However this assumes that the class Y is convertible to double. autoprefix_norm_impl::type appears to be always double. I am unclear if this is checked or is the responsibility or the user? " Bugs new Boost 1.51.0 units Boost 1.51.0 Problem units autoprefix UDT