Re: Keep std::deque algos specializations in Debug mode

2018-09-10 Thread François Dumont
One more update, running more tests show that template alias was badly defined when users are using directly . So I enventually defined it in std::__detail namespace where it is easier to use _GLIBCXX_STD_C. Too bad that _Deque_iterator didn't got defined in __detail namespace so that we could

Re: Keep std::deque algos specializations in Debug mode

2018-09-07 Thread François Dumont
I realized that I was not checking the Debug implementations. Doing so also have the advantage to show clearly which overload of the algos is being used. If it is using the correct Debug overload I consider that there are chances that it is also using the correct normal overload. This is easie

Re: Keep std::deque algos specializations in Debug mode

2018-09-06 Thread François Dumont
On 09/04/2018 02:59 PM, Jonathan Wakely wrote:   template     void -    fill(const _Deque_iterator<_Tp, _Tp&, _Tp*>& __first, - const _Deque_iterator<_Tp, _Tp&, _Tp*>& __last, const _Tp& __value) +    fill(const _GLIBCXX_STD_C::_Deque_iterator<_Tp, _Tp&, _Tp*>& __first, + const _GLI

Re: Keep std::deque algos specializations in Debug mode

2018-09-04 Thread Jonathan Wakely
On 25/08/18 22:44 +0200, François Dumont wrote: The last optimizations that get disabled when Debug mode is enable are the algo specializations for std::deque iterators. This patch move those algos in std namespace as they should even when Debug mode is enable so that they get considered even

Re: Keep std::deque algos specializations in Debug mode

2018-08-29 Thread François Dumont
On 08/28/2018 09:00 PM, Jonathan Wakely wrote: On 25/08/18 22:44 +0200, François Dumont wrote: The last optimizations that get disabled when Debug mode is enable are the algo specializations for std::deque iterators. This patch move those algos in std namespace as they should even when Debug

Re: Keep std::deque algos specializations in Debug mode

2018-08-28 Thread Jonathan Wakely
On 25/08/18 22:44 +0200, François Dumont wrote: The last optimizations that get disabled when Debug mode is enable are the algo specializations for std::deque iterators. This patch move those algos in std namespace as they should even when Debug mode is enable so that they get considered even

Re: Keep std::deque algos specializations in Debug mode

2018-08-28 Thread Jonathan Wakely
On 25/08/18 22:44 +0200, François Dumont wrote: Note that I try to use typename deque<>::iterator or typename deque<>::const_iterator to define Debug algos but it didn't work, gcc was just not considering those overloads. I wonder why ? Because you can't deduce the template arguments from thos