Thanks for the explanation, it is much clearer.
So here is a the more limited patch.
Tested under Linux x86_64.
Ok to commit ?
François
On 18/11/2015 13:27, Jonathan Wakely wrote:
> On 17/11/15 20:49 +0100, François Dumont wrote:
>> On 16/11/2015 11:29, Jonathan Wakely wrote:
>>> Not doing th
On 18/11/15 12:27 +, Jonathan Wakely wrote:
But my unproven assumption is that it's more common to use operator[]
incorrectly, rather than pass invalid iterators to range insert, which
is a relatively "advanced" operation.
It's worth noting that the google/integration branch doesn't have an
On 17/11/15 20:49 +0100, François Dumont wrote:
On 16/11/2015 11:29, Jonathan Wakely wrote:
Not doing the checks is also an option. That minimizes the cost :-)
This is controlled by a macro, users already have this option.
True, but we're talking about maybe enabling these checks by default
On 16/11/2015 11:29, Jonathan Wakely wrote:
> On 15/11/15 22:12 +0100, François Dumont wrote:
>> Here is a last version I think.
>>
>>I completed the debug light mode by adding some check on iterator
>> ranges.
>>
>>Even if check are light I made some changes to make sure that
>> internally
On 15/11/15 22:12 +0100, François Dumont wrote:
Here is a last version I think.
I completed the debug light mode by adding some check on iterator
ranges.
Even if check are light I made some changes to make sure that
internally vector is not using methods instrumented with those checks.
Th
On 12/10/2015 21:42, François Dumont wrote:
> On 07/10/2015 22:09, Jonathan Wakely wrote:
>> On 07/10/15 21:38 +0200, François Dumont wrote:
>>> Hi
>>>
>>>I completed vector assertion mode. Here is the result of the new
>>> test you will find in the attached patch.
>>>
>>> With debug mode:
>>>
On 07/10/2015 22:09, Jonathan Wakely wrote:
> On 07/10/15 21:38 +0200, François Dumont wrote:
>> Hi
>>
>>I completed vector assertion mode. Here is the result of the new
>> test you will find in the attached patch.
>>
>> With debug mode:
>> /home/fdt/dev/gcc/build_git/x86_64-unknown-linux-gnu/l
On 07/10/15 21:38 +0200, François Dumont wrote:
Hi
I completed vector assertion mode. Here is the result of the new
test you will find in the attached patch.
With debug mode:
/home/fdt/dev/gcc/build_git/x86_64-unknown-linux-gnu/libstdc++-v3/include/debug/safe_iterator.h:375:
Error: attempt t
Hi
I completed vector assertion mode. Here is the result of the new
test you will find in the attached patch.
With debug mode:
/home/fdt/dev/gcc/build_git/x86_64-unknown-linux-gnu/libstdc++-v3/include/debug/safe_iterator.h:375:
Error: attempt to advance a dereferenceable (start-of-sequence) i
On 19 September 2015 at 10:12, Jonathan Wakely wrote:
> On 19 September 2015 at 08:31, François Dumont wrote:
>> On 16/09/2015 22:29, Jonathan Wakely wrote:
>>> No, because it is undefined to compare iterators that belong to
>>> different containers, or to compare pointers that point to different
On 19 September 2015 at 08:31, François Dumont wrote:
> On 16/09/2015 22:29, Jonathan Wakely wrote:
>> No, because it is undefined to compare iterators that belong to
>> different containers, or to compare pointers that point to different
>> arrays.
>>
>
> (Written before Christopher reply:)
>
> At
On 17 September 2015 at 21:52, Christopher Jefferson
wrote:
> -- Forwarded message --
> From: Christopher Jefferson
> Date: 17 September 2015 at 18:59
> Subject: Re: vector lightweight debug mode
> To: Jonathan Wakely
>
>
> On 16 September 2015 at 21:29
On 16/09/2015 22:29, Jonathan Wakely wrote:
>
>>>
constexpr bool __move_storage =
_Alloc_traits::_S_propagate_on_move_assign()
|| _Alloc_traits::_S_always_equal();
@@ -778,7 +779,10 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
*/
refer
-- Forwarded message --
From: Christopher Jefferson
Date: 17 September 2015 at 18:59
Subject: Re: vector lightweight debug mode
To: Jonathan Wakely
On 16 September 2015 at 21:29, Jonathan Wakely wrote:
> On 16/09/15 21:37 +0200, François Dumont wrote:
>
>>>>
On 16/09/15 21:37 +0200, François Dumont wrote:
On 14/09/2015 21:50, Jonathan Wakely wrote:
On 14/09/15 20:27 +0200, François Dumont wrote:
diff --git a/libstdc++-v3/include/bits/stl_vector.h
b/libstdc++-v3/include/bits/stl_vector.h
index 305d446..89a9aec 100644
--- a/libstdc++-v3/include/bits/
On 14/09/2015 21:50, Jonathan Wakely wrote:
> On 14/09/15 20:27 +0200, François Dumont wrote:
>> Hi
>>
>>Here is what I had in mind when talking about moving debug checks to
>> the lightweight debug checks.
>
> Ah yes, I hadn't thought about removing reundant checks from the
> __gnu_debug conta
On 14/09/15 20:27 +0200, François Dumont wrote:
Hi
Here is what I had in mind when talking about moving debug checks to
the lightweight debug checks.
Ah yes, I hadn't thought about removing reundant checks from the
__gnu_debug containers, but that makes sense.
Sometimes the checks have
Hi
Here is what I had in mind when talking about moving debug checks to
the lightweight debug checks.
Sometimes the checks have been simply moved resulting in a simpler
debug vector implementation (front, back...). Sometimes I copy the
checks in a simpler form and kept the debug one too t
18 matches
Mail list logo