Boost C++ Libraries: Ticket #5671: Intel C++ Composer XE 12 does not support RVALUE_REFERENCES https://svn.boost.org/trac10/ticket/5671 <p> Compiler: Intel C++ Composer XE 12 update 4. </p> <p> Error: </p> <pre class="wiki">/home/phprus/science/workspace/Boost/libs/boost_1_47_0_beta1/gcc/include/boost/exception/detail/exception_ptr.hpp(275): error: class "boost::exception_ptr" has no suitable copy constructor return boost::copy_exception(unknown_exception()); ^ /home/phprus/science/workspace/Boost/libs/boost_1_47_0_beta1/gcc/include/boost/exception/detail/exception_ptr.hpp(282): error: class "boost::exception_ptr" has no suitable copy constructor return boost::copy_exception(unknown_exception(e)); ^ /home/phprus/science/workspace/Boost/libs/boost_1_47_0_beta1/gcc/include/boost/exception/detail/exception_ptr.hpp(290): error: class "boost::exception_ptr" has no suitable copy constructor return current_exception_unknown_boost_exception(*be); ^ /home/phprus/science/workspace/Boost/libs/boost_1_47_0_beta1/gcc/include/boost/exception/detail/exception_ptr.hpp(292): error: class "boost::exception_ptr" has no suitable copy constructor return boost::copy_exception(unknown_exception(e)); ^ /home/phprus/science/workspace/Boost/libs/boost_1_47_0_beta1/gcc/include/boost/exception/detail/exception_ptr.hpp(307): error: class "boost::exception_ptr" has no suitable copy constructor return exception_ptr(shared_ptr&lt;exception_detail::clone_base const&gt;(e)); ^ /home/phprus/science/workspace/Boost/libs/boost_1_47_0_beta1/gcc/include/boost/exception/detail/exception_ptr.hpp(313): error: class "boost::exception_ptr" has no suitable copy constructor return exception_detail::exception_ptr_static_exception_object&lt;bad_alloc_&gt;::e; ^ /home/phprus/science/workspace/Boost/libs/boost_1_47_0_beta1/gcc/include/boost/exception/detail/exception_ptr.hpp(319): error: class "boost::exception_ptr" has no suitable copy constructor return exception_detail::exception_ptr_static_exception_object&lt;bad_exception_&gt;::e; ^ /home/phprus/science/workspace/Boost/libs/boost_1_47_0_beta1/gcc/include/boost/exception/detail/exception_ptr.hpp(334): error: class "boost::exception_ptr" has no suitable copy constructor return exception_ptr(shared_ptr&lt;exception_detail::clone_base const&gt;(e.clone())); ^ /home/phprus/science/workspace/Boost/libs/boost_1_47_0_beta1/gcc/include/boost/exception/detail/exception_ptr.hpp(339): error: class "boost::exception_ptr" has no suitable copy constructor return exception_detail::current_exception_std_exception(e); ^ /home/phprus/science/workspace/Boost/libs/boost_1_47_0_beta1/gcc/include/boost/exception/detail/exception_ptr.hpp(344): error: class "boost::exception_ptr" has no suitable copy constructor return exception_detail::current_exception_std_exception(e); ^ /home/phprus/science/workspace/Boost/libs/boost_1_47_0_beta1/gcc/include/boost/exception/detail/exception_ptr.hpp(349): error: class "boost::exception_ptr" has no suitable copy constructor return exception_detail::current_exception_std_exception(e); ^ /home/phprus/science/workspace/Boost/libs/boost_1_47_0_beta1/gcc/include/boost/exception/detail/exception_ptr.hpp(354): error: class "boost::exception_ptr" has no suitable copy constructor return exception_detail::current_exception_std_exception(e); ^ /home/phprus/science/workspace/Boost/libs/boost_1_47_0_beta1/gcc/include/boost/exception/detail/exception_ptr.hpp(359): error: class "boost::exception_ptr" has no suitable copy constructor return exception_detail::current_exception_std_exception(e); ^ /home/phprus/science/workspace/Boost/libs/boost_1_47_0_beta1/gcc/include/boost/exception/detail/exception_ptr.hpp(364): error: class "boost::exception_ptr" has no suitable copy constructor return exception_detail::current_exception_std_exception(e); ^ /home/phprus/science/workspace/Boost/libs/boost_1_47_0_beta1/gcc/include/boost/exception/detail/exception_ptr.hpp(369): error: class "boost::exception_ptr" has no suitable copy constructor return exception_detail::current_exception_std_exception(e); ^ /home/phprus/science/workspace/Boost/libs/boost_1_47_0_beta1/gcc/include/boost/exception/detail/exception_ptr.hpp(374): error: class "boost::exception_ptr" has no suitable copy constructor return exception_detail::current_exception_std_exception(e); ^ /home/phprus/science/workspace/Boost/libs/boost_1_47_0_beta1/gcc/include/boost/exception/detail/exception_ptr.hpp(379): error: class "boost::exception_ptr" has no suitable copy constructor return exception_detail::current_exception_std_exception(e); ^ /home/phprus/science/workspace/Boost/libs/boost_1_47_0_beta1/gcc/include/boost/exception/detail/exception_ptr.hpp(384): error: class "boost::exception_ptr" has no suitable copy constructor return exception_detail::current_exception_std_exception(e); ^ /home/phprus/science/workspace/Boost/libs/boost_1_47_0_beta1/gcc/include/boost/exception/detail/exception_ptr.hpp(389): error: class "boost::exception_ptr" has no suitable copy constructor return exception_detail::current_exception_std_exception(e); ^ /home/phprus/science/workspace/Boost/libs/boost_1_47_0_beta1/gcc/include/boost/exception/detail/exception_ptr.hpp(395): error: class "boost::exception_ptr" has no suitable copy constructor return exception_detail::current_exception_std_exception(e); ^ /home/phprus/science/workspace/Boost/libs/boost_1_47_0_beta1/gcc/include/boost/exception/detail/exception_ptr.hpp(400): error: class "boost::exception_ptr" has no suitable copy constructor return exception_detail::current_exception_std_exception(e); ^ /home/phprus/science/workspace/Boost/libs/boost_1_47_0_beta1/gcc/include/boost/exception/detail/exception_ptr.hpp(406): error: class "boost::exception_ptr" has no suitable copy constructor return exception_detail::current_exception_std_exception(e); ^ /home/phprus/science/workspace/Boost/libs/boost_1_47_0_beta1/gcc/include/boost/exception/detail/exception_ptr.hpp(411): error: class "boost::exception_ptr" has no suitable copy constructor return exception_detail::current_exception_unknown_std_exception(e); ^ /home/phprus/science/workspace/Boost/libs/boost_1_47_0_beta1/gcc/include/boost/exception/detail/exception_ptr.hpp(416): error: class "boost::exception_ptr" has no suitable copy constructor return exception_detail::current_exception_unknown_boost_exception(e); ^ /home/phprus/science/workspace/Boost/libs/boost_1_47_0_beta1/gcc/include/boost/exception/detail/exception_ptr.hpp(421): error: class "boost::exception_ptr" has no suitable copy constructor return exception_detail::current_exception_unknown_exception(); ... And many similar lines </pre><p> Fix code (file boost/exception/detail/exception_ptr.hpp, class exception_ptr): </p> <pre class="wiki"> exception_ptr( const exception_ptr &amp; other ): ptr_(other.ptr_) { } </pre> en-us Boost C++ Libraries /htdocs/site/boost.png https://svn.boost.org/trac10/ticket/5671 Trac 1.4.3 Vladislav <phprus@…> Tue, 05 Jul 2011 13:35:07 GMT <link>https://svn.boost.org/trac10/ticket/5671#comment:1 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/5671#comment:1</guid> <description> <p> Sorry! This is incorrect fix. </p> <p> Intel C++ Composer XE 12 update 4 does not support RVALUE_REFERENCES. </p> <p> Please change file config/compiler/intel.hpp and replace </p> <pre class="wiki">#if defined(BOOST_INTEL_STDCXX0X) &amp;&amp; (BOOST_INTEL_CXX_VERSION &gt;= 1200) # undef BOOST_NO_RVALUE_REFERENCES //# undef BOOST_NO_SCOPED_ENUMS // doesn't really work!! </pre><p> to: </p> <pre class="wiki">#if defined(BOOST_INTEL_STDCXX0X) &amp;&amp; (BOOST_INTEL_CXX_VERSION &gt;= 1200) //# undef BOOST_NO_RVALUE_REFERENCES // doesn't really work!! //# undef BOOST_NO_SCOPED_ENUMS // doesn't really work!! </pre><p> Without this fix is not compiling boost.filesystem too. </p> </description> <category>Ticket</category> </item> <item> <author>Vladislav <phprus@…></author> <pubDate>Tue, 05 Jul 2011 13:37:52 GMT</pubDate> <title>owner, component, summary changed https://svn.boost.org/trac10/ticket/5671#comment:2 https://svn.boost.org/trac10/ticket/5671#comment:2 <ul> <li><strong>owner</strong> changed from <span class="trac-author">Emil Dotchevski</span> to <span class="trac-author">John Maddock</span> </li> <li><strong>component</strong> <span class="trac-field-old">exception</span> → <span class="trac-field-new">config</span> </li> <li><strong>summary</strong> <span class="trac-field-old">class "boost::exception_ptr" has no suitable copy constructor</span> → <span class="trac-field-new">Intel C++ Composer XE 12 does not support RVALUE_REFERENCES</span> </li> </ul> <p> Old summaty: "class "boost::exception_ptr" has no suitable copy constructor" </p> Ticket John Maddock Thu, 07 Jul 2011 10:37:19 GMT status changed; resolution set https://svn.boost.org/trac10/ticket/5671#comment:3 https://svn.boost.org/trac10/ticket/5671#comment:3 <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">fixed</span> </li> </ul> <p> (In <a class="changeset" href="https://svn.boost.org/trac10/changeset/72953" title="RValue references don't really work correctly with Intel's compiler - ...">[72953]</a>) RValue references don't really work correctly with Intel's compiler - disable support for them for now as enabling it breaks the Filesystem and Exception libraries. Fixes <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/5671" title="#5671: Bugs: Intel C++ Composer XE 12 does not support RVALUE_REFERENCES (closed: fixed)">#5671</a>. See Intel support issue <a class="missing ticket">#636018</a>. </p> Ticket Vladislav <phprus@…> Thu, 07 Jul 2011 11:16:45 GMT <link>https://svn.boost.org/trac10/ticket/5671#comment:4 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/5671#comment:4</guid> <description> <p> Tell please, this patch will get into release 1.47.0? </p> </description> <category>Ticket</category> </item> <item> <dc:creator>John Maddock</dc:creator> <pubDate>Thu, 07 Jul 2011 11:21:53 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/5671#comment:5 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/5671#comment:5</guid> <description> <p> Probably too late, but I've asked. </p> </description> <category>Ticket</category> </item> </channel> </rss>