Re: [PATCH] PR libstdc++/92124 on hashtable

2020-01-08 Thread Jonathan Wakely
On 08/01/20 06:43 +0100, François Dumont wrote: @@ -404,15 +413,15 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION _M_begin() const { return static_cast<__node_type*>(_M_before_begin._M_nxt); } - // Assign *this using another _Hashtable instance. Either elements - // are copy or move d

Re: [PATCH] PR libstdc++/92124 on hashtable

2020-01-07 Thread François Dumont
On 1/6/20 4:17 PM, Jonathan Wakely wrote: On 07/11/19 20:28 +0100, François Dumont wrote: From what I understood from recent fix the unordered containers need to be updated the same way. I hope you'll appreciate the usage of rvalue forwarding. Containers Yes, I think it makes sense. node v

Re: [PATCH] PR libstdc++/92124 on hashtable

2020-01-06 Thread Jonathan Wakely
On 07/11/19 20:28 +0100, François Dumont wrote: From what I understood from recent fix the unordered containers need to be updated the same way. I hope you'll appreciate the usage of rvalue forwarding. Containers node values are moved as soon as _M_assign is called with a rvalue reference to

Re: [PATCH] PR libstdc++/92124 on hashtable

2020-01-06 Thread Jonathan Wakely
On 07/11/19 20:28 +0100, François Dumont wrote: From what I understood from recent fix the unordered containers need to be updated the same way. I hope you'll appreciate the usage of rvalue forwarding. Containers Yes, I think it makes sense. node values are moved as soon as _M_assign is cal

[PATCH] PR libstdc++/92124 on hashtable

2019-11-07 Thread François Dumont
From what I understood from recent fix the unordered containers need to be updated the same way. I hope you'll appreciate the usage of rvalue forwarding. Containers node values are moved as soon as _M_assign is called with a rvalue reference to the source container. Additionnaly this patch r