* [COMMIT PATCH] value_bits_valid: Fix latent bug.
@ 2013-07-04 16:09 Pedro Alves
2013-07-05 14:42 ` Andrew Burgess
0 siblings, 1 reply; 9+ messages in thread
From: Pedro Alves @ 2013-07-04 16:09 UTC (permalink / raw)
To: gdb-patches
Doing something else, I factored out the bits of the value_bits_valid
function that actually handle the check_validity hook, and
surprisingly found out that the result was misbehaving. Turns out
value_bits_valid has a latent bug. If the value is not lval_computed,
or doesn't have a check_validity hook, then we should assume the value
is entirely valid, not invalid. This is currently masked by the
value->optimized_out check -- I ran the testsuite with a gdb_assert(0)
inserted in place of that return being touched by the patch, and it
never triggers.
Tested on x86_64 Fedora 17.
gdb/
2013-07-04 Pedro Alves <palves@redhat.com>
* value.c (value_bits_valid): If the value is not lval_computed,
or doesn't have a check_validity hook, assume the value is entirely
valid.
---
gdb/value.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gdb/value.c b/gdb/value.c
index ce4b13a..353f62a 100644
--- a/gdb/value.c
+++ b/gdb/value.c
@@ -1086,7 +1086,7 @@ value_bits_valid (const struct value *value, int offset, int length)
return 1;
if (value->lval != lval_computed
|| !value->location.computed.funcs->check_validity)
- return 0;
+ return 1;
return value->location.computed.funcs->check_validity (value, offset,
length);
}
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [COMMIT PATCH] value_bits_valid: Fix latent bug.
2013-07-04 16:09 [COMMIT PATCH] value_bits_valid: Fix latent bug Pedro Alves
@ 2013-07-05 14:42 ` Andrew Burgess
2013-07-05 15:06 ` Pedro Alves
0 siblings, 1 reply; 9+ messages in thread
From: Andrew Burgess @ 2013-07-05 14:42 UTC (permalink / raw)
To: gdb-patches, Pedro Alves
On 04/07/2013 5:09 PM, Pedro Alves wrote:
> Doing something else, I factored out the bits of the value_bits_valid
> function that actually handle the check_validity hook, and
> surprisingly found out that the result was misbehaving. Turns out
> value_bits_valid has a latent bug. If the value is not lval_computed,
> or doesn't have a check_validity hook, then we should assume the value
> is entirely valid, not invalid. This is currently masked by the
> value->optimized_out check -- I ran the testsuite with a gdb_assert(0)
> inserted in place of that return being touched by the patch, and it
> never triggers.
>
> Tested on x86_64 Fedora 17.
>
> gdb/
> 2013-07-04 Pedro Alves <palves@redhat.com>
>
> * value.c (value_bits_valid): If the value is not lval_computed,
> or doesn't have a check_validity hook, assume the value is entirely
> valid.
> ---
> gdb/value.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/gdb/value.c b/gdb/value.c
> index ce4b13a..353f62a 100644
> --- a/gdb/value.c
> +++ b/gdb/value.c
> @@ -1086,7 +1086,7 @@ value_bits_valid (const struct value *value, int offset, int length)
> return 1;
> if (value->lval != lval_computed
> || !value->location.computed.funcs->check_validity)
> - return 0;
> + return 1;
> return value->location.computed.funcs->check_validity (value, offset,
> length);
> }
>
There's a small issue with this patch, in the case of an optimized_out,
non-computed value we now report that the bits are valid when they
should be invalid.
Patch below applies on top of the above and fixes both the original
issue Pedro spotted, and fixes the non-computed issue.
Ok to apply?
Thanks,
Andrew
gdb/ChangeLog
2013-07-05 Andrew Burgess <aburgess@broadcom.com>
* value.c (value_bits_valid): If the value is not lval_computed
then the answer is in the optimized_out flag, otherwise if we have
no handler assume bits are valid, if there is a handler use that.
diff --git a/gdb/value.c b/gdb/value.c
index 353f62a..ca5463b 100644
--- a/gdb/value.c
+++ b/gdb/value.c
@@ -1082,13 +1082,18 @@ value_entirely_optimized_out (const struct value *value)
int
value_bits_valid (const struct value *value, int offset, int length)
{
- if (!value->optimized_out)
- return 1;
- if (value->lval != lval_computed
- || !value->location.computed.funcs->check_validity)
- return 1;
- return value->location.computed.funcs->check_validity (value, offset,
- length);
+ if (value->lval != lval_computed)
+ return !value->optimized_out;
+ else
+ {
+ /* Computed value, defer to handler if there is one. */
+ if (!value->location.computed.funcs->check_validity)
+ return 1;
+ else
+ return value->location.computed.funcs->check_validity (value,
+ offset,
+ length);
+ }
}
int
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [COMMIT PATCH] value_bits_valid: Fix latent bug.
2013-07-05 14:42 ` Andrew Burgess
@ 2013-07-05 15:06 ` Pedro Alves
2013-07-05 15:20 ` Andrew Burgess
0 siblings, 1 reply; 9+ messages in thread
From: Pedro Alves @ 2013-07-05 15:06 UTC (permalink / raw)
To: Andrew Burgess; +Cc: gdb-patches
On 07/05/2013 03:42 PM, Andrew Burgess wrote:
> On 04/07/2013 5:09 PM, Pedro Alves wrote:
>> Doing something else, I factored out the bits of the value_bits_valid
>> function that actually handle the check_validity hook, and
>> surprisingly found out that the result was misbehaving. Turns out
>> value_bits_valid has a latent bug. If the value is not lval_computed,
>> or doesn't have a check_validity hook, then we should assume the value
>> is entirely valid, not invalid. This is currently masked by the
>> value->optimized_out check -- I ran the testsuite with a gdb_assert(0)
>> inserted in place of that return being touched by the patch, and it
>> never triggers.
>>
>> Tested on x86_64 Fedora 17.
>>
>> gdb/
>> 2013-07-04 Pedro Alves <palves@redhat.com>
>>
>> * value.c (value_bits_valid): If the value is not lval_computed,
>> or doesn't have a check_validity hook, assume the value is entirely
>> valid.
>> ---
>> gdb/value.c | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/gdb/value.c b/gdb/value.c
>> index ce4b13a..353f62a 100644
>> --- a/gdb/value.c
>> +++ b/gdb/value.c
>> @@ -1086,7 +1086,7 @@ value_bits_valid (const struct value *value, int offset, int length)
>> return 1;
>> if (value->lval != lval_computed
>> || !value->location.computed.funcs->check_validity)
>> - return 0;
>> + return 1;
>> return value->location.computed.funcs->check_validity (value, offset,
>> length);
>> }
>>
>
> There's a small issue with this patch, in the case of an optimized_out,
> non-computed value we now report that the bits are valid when they
> should be invalid.
Whoops...
> Patch below applies on top of the above and fixes both the original
> issue Pedro spotted, and fixes the non-computed issue.
>
> Ok to apply?
>
> Thanks,
> Andrew
>
>
> gdb/ChangeLog
>
> 2013-07-05 Andrew Burgess <aburgess@broadcom.com>
>
> * value.c (value_bits_valid): If the value is not lval_computed
> then the answer is in the optimized_out flag, otherwise if we have
> no handler assume bits are valid, if there is a handler use that.
>
>
>
> diff --git a/gdb/value.c b/gdb/value.c
> index 353f62a..ca5463b 100644
> --- a/gdb/value.c
> +++ b/gdb/value.c
> @@ -1082,13 +1082,18 @@ value_entirely_optimized_out (const struct value *value)
> int
> value_bits_valid (const struct value *value, int offset, int length)
> {
> - if (!value->optimized_out)
> - return 1;
> - if (value->lval != lval_computed
> - || !value->location.computed.funcs->check_validity)
> - return 1;
> - return value->location.computed.funcs->check_validity (value, offset,
> - length);
> + if (value->lval != lval_computed)
> + return !value->optimized_out;
> + else
> + {
> + /* Computed value, defer to handler if there is one. */
> + if (!value->location.computed.funcs->check_validity)
> + return 1;
Hmm, in this case we should look at the value->optimized_out
flag too, I think. Looks like my patch was bogus afterall,
and we should just revert it. Very sorry about that.
The patch I was originally talking about that exposed the
issue was:
https://github.com/palves/gdb/commit/7143cd119e18d568a5a224ac22f215a96f691624
but it looks like the value_check_validity function would have to
check value->optimized_out anyway, so the only difference to
value_bits_valid would be the assertions...
--
Pedro Alves
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [COMMIT PATCH] value_bits_valid: Fix latent bug.
2013-07-05 15:06 ` Pedro Alves
@ 2013-07-05 15:20 ` Andrew Burgess
2013-07-05 18:21 ` Pedro Alves
0 siblings, 1 reply; 9+ messages in thread
From: Andrew Burgess @ 2013-07-05 15:20 UTC (permalink / raw)
To: Pedro Alves; +Cc: gdb-patches
On 05/07/2013 4:06 PM, Pedro Alves wrote:
> On 07/05/2013 03:42 PM, Andrew Burgess wrote:
>> On 04/07/2013 5:09 PM, Pedro Alves wrote:
>>> Doing something else, I factored out the bits of the value_bits_valid
>>> function that actually handle the check_validity hook, and
>>> surprisingly found out that the result was misbehaving. Turns out
>>> value_bits_valid has a latent bug. If the value is not lval_computed,
>>> or doesn't have a check_validity hook, then we should assume the value
>>> is entirely valid, not invalid. This is currently masked by the
>>> value->optimized_out check -- I ran the testsuite with a gdb_assert(0)
>>> inserted in place of that return being touched by the patch, and it
>>> never triggers.
>>>
>>> Tested on x86_64 Fedora 17.
>>>
>>> gdb/
>>> 2013-07-04 Pedro Alves <palves@redhat.com>
>>>
>>> * value.c (value_bits_valid): If the value is not lval_computed,
>>> or doesn't have a check_validity hook, assume the value is entirely
>>> valid.
>>> ---
>>> gdb/value.c | 2 +-
>>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>> diff --git a/gdb/value.c b/gdb/value.c
>>> index ce4b13a..353f62a 100644
>>> --- a/gdb/value.c
>>> +++ b/gdb/value.c
>>> @@ -1086,7 +1086,7 @@ value_bits_valid (const struct value *value, int offset, int length)
>>> return 1;
>>> if (value->lval != lval_computed
>>> || !value->location.computed.funcs->check_validity)
>>> - return 0;
>>> + return 1;
>>> return value->location.computed.funcs->check_validity (value, offset,
>>> length);
>>> }
>>>
>>
>> There's a small issue with this patch, in the case of an optimized_out,
>> non-computed value we now report that the bits are valid when they
>> should be invalid.
>
> Whoops...
>
>> Patch below applies on top of the above and fixes both the original
>> issue Pedro spotted, and fixes the non-computed issue.
>>
>> Ok to apply?
>>
>> Thanks,
>> Andrew
>>
>>
>> gdb/ChangeLog
>>
>> 2013-07-05 Andrew Burgess <aburgess@broadcom.com>
>>
>> * value.c (value_bits_valid): If the value is not lval_computed
>> then the answer is in the optimized_out flag, otherwise if we have
>> no handler assume bits are valid, if there is a handler use that.
>>
>>
>>
>> diff --git a/gdb/value.c b/gdb/value.c
>> index 353f62a..ca5463b 100644
>> --- a/gdb/value.c
>> +++ b/gdb/value.c
>> @@ -1082,13 +1082,18 @@ value_entirely_optimized_out (const struct value *value)
>> int
>> value_bits_valid (const struct value *value, int offset, int length)
>> {
>> - if (!value->optimized_out)
>> - return 1;
>> - if (value->lval != lval_computed
>> - || !value->location.computed.funcs->check_validity)
>> - return 1;
>> - return value->location.computed.funcs->check_validity (value, offset,
>> - length);
>> + if (value->lval != lval_computed)
>> + return !value->optimized_out;
>> + else
>> + {
>> + /* Computed value, defer to handler if there is one. */
>> + if (!value->location.computed.funcs->check_validity)
>> + return 1;
>
> Hmm, in this case we should look at the value->optimized_out
> flag too, I think. Looks like my patch was bogus afterall,
> and we should just revert it. Very sorry about that.
>
> The patch I was originally talking about that exposed the
> issue was:
>
> https://github.com/palves/gdb/commit/7143cd119e18d568a5a224ac22f215a96f691624
>
> but it looks like the value_check_validity function would have to
> check value->optimized_out anyway, so the only difference to
> value_bits_valid would be the assertions...
You're right, except we could imagine a computed value that implements a fetch method, but not a check-validity method, instead it just sets the optimized_out flag. So, third time lucky, this time,
- non computed values, and computed values with no check-validity handler just defer to the optimized_out flag.
- computed values with a handler defer to the handler.
This is a change from the original code, but I think it's a good change, what do you think?
Andrew
gdb/ChangeLog
2013-07-05 Andrew Burgess <aburgess@broadcom.com>
* value.c (value_bits_valid): If the value is not lval_computed
or has no check validity handler then the answer is the
optimized_out flag, otherwise defer to the handler.
diff --git a/gdb/value.c b/gdb/value.c
index 353f62a..1be1845 100644
--- a/gdb/value.c
+++ b/gdb/value.c
@@ -1082,13 +1082,12 @@ value_entirely_optimized_out (const struct value *value)
int
value_bits_valid (const struct value *value, int offset, int length)
{
- if (!value->optimized_out)
- return 1;
if (value->lval != lval_computed
|| !value->location.computed.funcs->check_validity)
- return 1;
- return value->location.computed.funcs->check_validity (value, offset,
- length);
+ return !value->optimized_out;
+ else
+ return value->location.computed.funcs->check_validity (value, offset,
+ length);
}
int
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [COMMIT PATCH] value_bits_valid: Fix latent bug.
2013-07-05 15:20 ` Andrew Burgess
@ 2013-07-05 18:21 ` Pedro Alves
2013-07-08 10:22 ` Andrew Burgess
0 siblings, 1 reply; 9+ messages in thread
From: Pedro Alves @ 2013-07-05 18:21 UTC (permalink / raw)
To: Andrew Burgess; +Cc: gdb-patches
On 07/05/2013 04:20 PM, Andrew Burgess wrote:
> 2013-07-05 Andrew Burgess <aburgess@broadcom.com>
>
> * value.c (value_bits_valid): If the value is not lval_computed
> or has no check validity handler then the answer is the
> optimized_out flag, otherwise defer to the handler.
OK.
--
Pedro Alves
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [COMMIT PATCH] value_bits_valid: Fix latent bug.
2013-07-05 18:21 ` Pedro Alves
@ 2013-07-08 10:22 ` Andrew Burgess
2013-07-09 9:54 ` Regression for implptr.exp and pieces.exp [Re: [COMMIT PATCH] value_bits_valid: Fix latent bug.] Jan Kratochvil
0 siblings, 1 reply; 9+ messages in thread
From: Andrew Burgess @ 2013-07-08 10:22 UTC (permalink / raw)
To: gdb-patches; +Cc: Pedro Alves
On 05/07/2013 7:21 PM, Pedro Alves wrote:
> On 07/05/2013 04:20 PM, Andrew Burgess wrote:
>
>> 2013-07-05 Andrew Burgess <aburgess@broadcom.com>
>>
>> * value.c (value_bits_valid): If the value is not lval_computed
>> or has no check validity handler then the answer is the
>> optimized_out flag, otherwise defer to the handler.
>
> OK.
Committed.
Thanks,
Andrew
^ permalink raw reply [flat|nested] 9+ messages in thread
* Regression for implptr.exp and pieces.exp [Re: [COMMIT PATCH] value_bits_valid: Fix latent bug.]
2013-07-08 10:22 ` Andrew Burgess
@ 2013-07-09 9:54 ` Jan Kratochvil
2013-07-09 14:16 ` Andrew Burgess
0 siblings, 1 reply; 9+ messages in thread
From: Jan Kratochvil @ 2013-07-09 9:54 UTC (permalink / raw)
To: Andrew Burgess; +Cc: gdb-patches, Pedro Alves
On Mon, 08 Jul 2013 12:22:17 +0200, Andrew Burgess wrote:
> On 05/07/2013 7:21 PM, Pedro Alves wrote:
> > On 07/05/2013 04:20 PM, Andrew Burgess wrote:
> >
> >> 2013-07-05 Andrew Burgess <aburgess@broadcom.com>
> >>
> >> * value.c (value_bits_valid): If the value is not lval_computed
> >> or has no check validity handler then the answer is the
> >> optimized_out flag, otherwise defer to the handler.
> >
> > OK.
>
> Committed.
On any platform I test for 32-bit targets (either on i386 native host or on
x86_64 host with -m32 target cflags) I get:
9f5e30f7cf73a3256fbb9a265c897aa3f2c91439 is the first bad commit
commit 9f5e30f7cf73a3256fbb9a265c897aa3f2c91439
Author: aburgess <aburgess>
Date: Mon Jul 8 10:21:33 2013 +0000
Fix bug in value_bits_valid.
http://sourceware.org/ml/gdb-patches/2013-07/msg00174.html
* value.c (value_bits_valid): If the value is not lval_computed
or has no check validity handler then the answer is the
optimized_out flag, otherwise defer to the handler.
Running gdb/testsuite/gdb.dwarf2/implptr.exp ...
-PASS: gdb.dwarf2/implptr.exp: print j in implptr:bar
+FAIL: gdb.dwarf2/implptr.exp: print j in implptr:bar
-PASS: gdb.dwarf2/implptr.exp: print p[0].x in implptr:foo
+FAIL: gdb.dwarf2/implptr.exp: print p[0].x in implptr:foo
Running gdb/testsuite/gdb.dwarf2/pieces.exp ...
-PASS: gdb.dwarf2/pieces.exp: print a.i in pieces:f3
-PASS: gdb.dwarf2/pieces.exp: print a.j in pieces:f3
-PASS: gdb.dwarf2/pieces.exp: set a.i in pieces:f3
-PASS: gdb.dwarf2/pieces.exp: print new a.i in pieces:f3
+FAIL: gdb.dwarf2/pieces.exp: print a.i in pieces:f3
+FAIL: gdb.dwarf2/pieces.exp: print a.j in pieces:f3
+FAIL: gdb.dwarf2/pieces.exp: set a.i in pieces:f3
+FAIL: gdb.dwarf2/pieces.exp: print new a.i in pieces:f3
Regards,
Jan
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Regression for implptr.exp and pieces.exp [Re: [COMMIT PATCH] value_bits_valid: Fix latent bug.]
2013-07-09 9:54 ` Regression for implptr.exp and pieces.exp [Re: [COMMIT PATCH] value_bits_valid: Fix latent bug.] Jan Kratochvil
@ 2013-07-09 14:16 ` Andrew Burgess
2013-07-24 20:10 ` Jan Kratochvil
0 siblings, 1 reply; 9+ messages in thread
From: Andrew Burgess @ 2013-07-09 14:16 UTC (permalink / raw)
To: Jan Kratochvil, Pedro Alves; +Cc: gdb-patches
On 09/07/2013 10:54 AM, Jan Kratochvil wrote:
> On Mon, 08 Jul 2013 12:22:17 +0200, Andrew Burgess wrote:
>> On 05/07/2013 7:21 PM, Pedro Alves wrote:
>>> On 07/05/2013 04:20 PM, Andrew Burgess wrote:
>>>
>>>> 2013-07-05 Andrew Burgess <aburgess@broadcom.com>
>>>>
>>>> * value.c (value_bits_valid): If the value is not lval_computed
>>>> or has no check validity handler then the answer is the
>>>> optimized_out flag, otherwise defer to the handler.
>>>
>>> OK.
>>
>> Committed.
>
> On any platform I test for 32-bit targets (either on i386 native host or on
> x86_64 host with -m32 target cflags) I get:
>
> 9f5e30f7cf73a3256fbb9a265c897aa3f2c91439 is the first bad commit
> commit 9f5e30f7cf73a3256fbb9a265c897aa3f2c91439
> Author: aburgess <aburgess>
> Date: Mon Jul 8 10:21:33 2013 +0000
>
> Fix bug in value_bits_valid.
>
> http://sourceware.org/ml/gdb-patches/2013-07/msg00174.html
>
> * value.c (value_bits_valid): If the value is not lval_computed
> or has no check validity handler then the answer is the
> optimized_out flag, otherwise defer to the handler.
>
> Running gdb/testsuite/gdb.dwarf2/implptr.exp ...
> -PASS: gdb.dwarf2/implptr.exp: print j in implptr:bar
> +FAIL: gdb.dwarf2/implptr.exp: print j in implptr:bar
> -PASS: gdb.dwarf2/implptr.exp: print p[0].x in implptr:foo
> +FAIL: gdb.dwarf2/implptr.exp: print p[0].x in implptr:foo
>
> Running gdb/testsuite/gdb.dwarf2/pieces.exp ...
> -PASS: gdb.dwarf2/pieces.exp: print a.i in pieces:f3
> -PASS: gdb.dwarf2/pieces.exp: print a.j in pieces:f3
> -PASS: gdb.dwarf2/pieces.exp: set a.i in pieces:f3
> -PASS: gdb.dwarf2/pieces.exp: print new a.i in pieces:f3
> +FAIL: gdb.dwarf2/pieces.exp: print a.i in pieces:f3
> +FAIL: gdb.dwarf2/pieces.exp: print a.j in pieces:f3
> +FAIL: gdb.dwarf2/pieces.exp: set a.i in pieces:f3
> +FAIL: gdb.dwarf2/pieces.exp: print new a.i in pieces:f3
>
I've committed a patch to revert all the changes done by Pedro and
myself to value_bits_valid, this is what Pedro was going to do anyway here:
http://sourceware.org/ml/gdb-patches/2013-07/msg00200.html
before I jumped in.
Looking again at this function I don't believe either the original (now
current again) version, or any of the versions we've tried are actually
correct, but fixing this properly is going to be slightly more involved,
and I don't have time to put the patch together today.
Sorry for the inconvenience.
Andrew.
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Regression for implptr.exp and pieces.exp [Re: [COMMIT PATCH] value_bits_valid: Fix latent bug.]
2013-07-09 14:16 ` Andrew Burgess
@ 2013-07-24 20:10 ` Jan Kratochvil
0 siblings, 0 replies; 9+ messages in thread
From: Jan Kratochvil @ 2013-07-24 20:10 UTC (permalink / raw)
To: Andrew Burgess; +Cc: Pedro Alves, gdb-patches
On Tue, 09 Jul 2013 16:15:54 +0200, Andrew Burgess wrote:
> On 09/07/2013 10:54 AM, Jan Kratochvil wrote:
> > 9f5e30f7cf73a3256fbb9a265c897aa3f2c91439 is the first bad commit
> > commit 9f5e30f7cf73a3256fbb9a265c897aa3f2c91439
> > Author: aburgess <aburgess>
> > Date: Mon Jul 8 10:21:33 2013 +0000
> >
> > Fix bug in value_bits_valid.
> >
> > http://sourceware.org/ml/gdb-patches/2013-07/msg00174.html
> >
> > * value.c (value_bits_valid): If the value is not lval_computed
> > or has no check validity handler then the answer is the
> > optimized_out flag, otherwise defer to the handler.
> >
> > Running gdb/testsuite/gdb.dwarf2/implptr.exp ...
> > -PASS: gdb.dwarf2/implptr.exp: print j in implptr:bar
> > +FAIL: gdb.dwarf2/implptr.exp: print j in implptr:bar
> > -PASS: gdb.dwarf2/implptr.exp: print p[0].x in implptr:foo
> > +FAIL: gdb.dwarf2/implptr.exp: print p[0].x in implptr:foo
> >
> > Running gdb/testsuite/gdb.dwarf2/pieces.exp ...
> > -PASS: gdb.dwarf2/pieces.exp: print a.i in pieces:f3
> > -PASS: gdb.dwarf2/pieces.exp: print a.j in pieces:f3
> > -PASS: gdb.dwarf2/pieces.exp: set a.i in pieces:f3
> > -PASS: gdb.dwarf2/pieces.exp: print new a.i in pieces:f3
> > +FAIL: gdb.dwarf2/pieces.exp: print a.i in pieces:f3
> > +FAIL: gdb.dwarf2/pieces.exp: print a.j in pieces:f3
> > +FAIL: gdb.dwarf2/pieces.exp: set a.i in pieces:f3
> > +FAIL: gdb.dwarf2/pieces.exp: print new a.i in pieces:f3
>
> I've committed a patch to revert all the changes done by Pedro and
> myself to value_bits_valid,
Confirming the temporary regression has been fixed by:
commit 34b2792f3cdf8d24d665257b56c6c576a8dfa27c
Author: aburgess <aburgess>
Date: Tue Jul 9 14:11:53 2013 +0000
Revert recent changes to value_bits_valid.
http://sourceware.org/ml/gdb-patches/2013-07/msg00243.html
* value.c (value_bits_valid): Revert previous change, and change
by Pedro on 2013-07-04, due to regressions in
gdb.dwarf2/implptr.exp and gdb.dwarf2/pieces.exp.
Jan
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2013-07-24 20:10 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-07-04 16:09 [COMMIT PATCH] value_bits_valid: Fix latent bug Pedro Alves
2013-07-05 14:42 ` Andrew Burgess
2013-07-05 15:06 ` Pedro Alves
2013-07-05 15:20 ` Andrew Burgess
2013-07-05 18:21 ` Pedro Alves
2013-07-08 10:22 ` Andrew Burgess
2013-07-09 9:54 ` Regression for implptr.exp and pieces.exp [Re: [COMMIT PATCH] value_bits_valid: Fix latent bug.] Jan Kratochvil
2013-07-09 14:16 ` Andrew Burgess
2013-07-24 20:10 ` Jan Kratochvil
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox