Boost C++ Libraries: Ticket #6119: output streams not working with units https://svn.boost.org/trac10/ticket/6119 <p> Compiling the temperature.cpp example problems fails with this error message </p> <p> S896822:example kbelco$ icpc -g -I ../../.. temperature.cpp ../../../boost/units/io.hpp(967): error: more than one instance of overloaded function "boost::units::detail::do_print_prefixed" matches the argument list: </p> <blockquote> <p> function template "void boost::units::detail::do_print_prefixed&lt;Prefixes,CharT,Traits,Dimension,L,Scale,T&gt;(std::basic_ostream&lt;_CharT, _Traits&gt; &amp;, const boost::units::quantity&lt;boost::units::unit&lt;Dimension, boost::units::heterogeneous_system&lt;boost::units::heterogeneous_system_impl&lt;L, Dimension, Scale&gt;&gt;, void&gt;, T&gt; &amp;)" function template "void boost::units::detail::do_print_prefixed&lt;Prefixes,CharT,Traits,Dimension,System,T&gt;(std::basic_ostream&lt;_CharT, _Traits&gt; &amp;, const boost::units::quantity&lt;boost::units::unit&lt;Dimension, System, void&gt;, T&gt; &amp;)" function template "void boost::units::detail::do_print_prefixed&lt;Prefixes,CharT,Traits,Unit,T&gt;(std::basic_ostream&lt;_CharT, _Traits&gt; &amp;, const boost::units::quantity&lt;Unit, T&gt; &amp;)" argument types are: (std::basic_ostream&lt;char, std::char_traits&lt;char&gt;&gt;, const boost::units::quantity&lt;boost::units::fahrenheit::temperature, double&gt;) </p> </blockquote> <blockquote> <p> detail::do_print_prefixed&lt;Prefixes&gt;(os, q); <sup> </sup></p> <blockquote> <p> detected during: </p> <blockquote> <p> instantiation of "void boost::units::detail::maybe_print_prefixed&lt;Prefixes,CharT,Traits,Unit,T&gt;(std::basic_ostream&lt;_CharT, _Traits&gt; &amp;, const boost::units::quantity&lt;Unit, T&gt; &amp;, boost::mpl::true_) [with Prefixes=boost::units::detail::engineering_prefixes, CharT=char, Traits=std::char_traits&lt;char&gt;, Unit=boost::units::fahrenheit::temperature, T=double]" at line 1050 instantiation of "std::basic_ostream&lt;_CharT, _Traits&gt; &amp;boost::units::operator&lt;&lt;(std::basic_ostream&lt;_CharT, _Traits&gt; &amp;, const boost::units::quantity&lt;Unit2, T2&gt; &amp;) [with Char=char, Traits=std::char_traits&lt;char&gt;, Unit=boost::units::fahrenheit::temperature, T=double]" at line 92 of "temperature.cpp" </p> </blockquote> </blockquote> </blockquote> <p> The same message occurs with a small reproducer. </p> <p> #include &lt;iostream&gt; #include &lt;boost/units/io.hpp&gt; #include &lt;boost/units/quantity.hpp&gt; #include &lt;boost/units/systems/temperature/fahrenheit.hpp&gt; </p> <p> int main(int, char <strong>) { </strong></p> <blockquote> <p> using namespace boost::units; quantity&lt;fahrenheit::temperature&gt; t; cout &lt;&lt; t &lt;&lt; endl; return 0; </p> </blockquote> <p> } </p> en-us Boost C++ Libraries /htdocs/site/boost.png https://svn.boost.org/trac10/ticket/6119 Trac 1.4.3 Noel Belcourt Wed, 30 Nov 2011 21:16:41 GMT status changed; resolution set https://svn.boost.org/trac10/ticket/6119#comment:1 https://svn.boost.org/trac10/ticket/6119#comment:1 <ul> <li><strong>status</strong> <span class="trac-field-old">new</span> → <span class="trac-field-new">closed</span> </li> <li><strong>resolution</strong> → <span class="trac-field-new">wontfix</span> </li> </ul> <p> Closing this ticket as Intel will not fix for Leopard (10.5.x) and Xcode 3.1.x incompatibility. </p> Ticket