Re: Bug in GCC 4.5 c++0x version of std::listT::merge()?
2009/12/8 Benjamin Redelings I: Hi, Hi, I've CC'd the libstdc++ list, please reply there instead of the gcc list. It seems that many current uses of listT::merge( ) fail to compile with -std=c++0x, but I don't see a bug in bugzilla for this. Itseems to result from: list_Tp, _Alloc:: #ifdef __GXX_EXPERIMENTAL_CXX0X__ merge(list __x) #else merge(list __x) #endif For c++0x, don't we need BOTH versions, since lvalues no longer bind to rvalue references, or am I missing something? The WP only has: void merge(listT,Allocator x); template class Compare void merge(listT,Allocator x, Compare comp); See http://home.roadrunner.com/~hinnant/issue_review/lwg-active.html#1133 which covers a similar issue with splice. Jonathan
Re: Bug in GCC 4.5 c++0x version of std::listT::merge()?
Benjamin Redelings wrote: since lvalues no longer bind to rvalue references When has it changed? Could you please give a reference to some paper/discussion about it? I'm asking, because my C++0x-based application stopped to compile on newer 4.5-s and one of the problems is mentioned above -- but I thought that it was a GCC issue, not a change in the Standard. Best regards Piotr Wyderski
Re: Bug in GCC 4.5 c++0x version of std::listT::merge()?
On 12/08/2009 10:54 AM, Piotr Wyderski wrote: When has it changed? Could you please give a reference to some paper/discussion about it? http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2009/n2844.html Just as an example... Paolo.
Bug in GCC 4.5 c++0x version of std::listT::merge()?
Hi, It seems that many current uses of listT::merge( ) fail to compile with -std=c++0x, but I don't see a bug in bugzilla for this. Itseems to result from: list_Tp, _Alloc:: #ifdef __GXX_EXPERIMENTAL_CXX0X__ merge(list __x) #else merge(list __x) #endif For c++0x, don't we need BOTH versions, since lvalues no longer bind to rvalue references, or am I missing something? -BenRI