* Bug in GCC 4.5 c++0x version of std::list<T>::merge(&&)?
@ 2009-12-08 3:39 Benjamin Redelings I
2009-12-08 8:26 ` Jonathan Wakely
2009-12-08 9:54 ` Piotr Wyderski
0 siblings, 2 replies; 4+ messages in thread
From: Benjamin Redelings I @ 2009-12-08 3:39 UTC (permalink / raw)
To: gcc
Hi,
It seems that many current uses of list<T>::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
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Bug in GCC 4.5 c++0x version of std::list<T>::merge(&&)?
2009-12-08 3:39 Bug in GCC 4.5 c++0x version of std::list<T>::merge(&&)? Benjamin Redelings I
@ 2009-12-08 8:26 ` Jonathan Wakely
2009-12-08 9:54 ` Piotr Wyderski
1 sibling, 0 replies; 4+ messages in thread
From: Jonathan Wakely @ 2009-12-08 8:26 UTC (permalink / raw)
To: Benjamin Redelings I; +Cc: gcc, libstdc++
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 list<T>::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(list<T,Allocator>&& x);
template <class Compare> void merge(list<T,Allocator>&& x, Compare comp);
See http://home.roadrunner.com/~hinnant/issue_review/lwg-active.html#1133
which covers a similar issue with splice.
Jonathan
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Bug in GCC 4.5 c++0x version of std::list<T>::merge(&&)?
2009-12-08 3:39 Bug in GCC 4.5 c++0x version of std::list<T>::merge(&&)? Benjamin Redelings I
2009-12-08 8:26 ` Jonathan Wakely
@ 2009-12-08 9:54 ` Piotr Wyderski
2009-12-08 10:01 ` Paolo Carlini
1 sibling, 1 reply; 4+ messages in thread
From: Piotr Wyderski @ 2009-12-08 9:54 UTC (permalink / raw)
To: Benjamin Redelings I; +Cc: gcc
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
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Bug in GCC 4.5 c++0x version of std::list<T>::merge(&&)?
2009-12-08 9:54 ` Piotr Wyderski
@ 2009-12-08 10:01 ` Paolo Carlini
0 siblings, 0 replies; 4+ messages in thread
From: Paolo Carlini @ 2009-12-08 10:01 UTC (permalink / raw)
To: Piotr Wyderski; +Cc: Benjamin Redelings I, gcc
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.
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2009-12-08 10:01 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-12-08 3:39 Bug in GCC 4.5 c++0x version of std::list<T>::merge(&&)? Benjamin Redelings I
2009-12-08 8:26 ` Jonathan Wakely
2009-12-08 9:54 ` Piotr Wyderski
2009-12-08 10:01 ` Paolo Carlini
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).