Re: [RFC 00/12] Merge value optimized_out and unavailable

Andrew Burgess
2013-12-04T14:54:13Z

On 29/11/2013 8:20 PM, Pedro Alves wrote:
> On 08/12/2013 01:15 PM, Andrew Burgess wrote:
>> This patch set merges together how gdb handles values that are
>> optimized out and values that are unavailable.

Thanks for taking the time to review these patches. I'll go through your
comments and see if there's a way that this could be moved forward, I
already have one small patch to post that can be split from this series.

>> After this patch set there will be a single unified interface to ask
>> if a value is available (either fully, partially, or for a range of
>> bit/bytes), this will answer in terms of both optimized out and
>> unavailable state.
>
> On terminology: I'd much rather not overload the "available/unavailable"
> words for this. It'll end up confusing, like "This value is
> not available, because it was unavailable? No, because it
> was optimized out.". Etc.

I agree, and I should have mentioned this. To avoid excessive churn I
had not tried to resolve this issue, but the way I currently see it we
have two current reasons for unavailability, "optimized-out" and
"not-collected" (not-collected covers not collected by a trace frame, or
not collected in a core file).

For a consistent user experience we'd probably always print
"optimized-out" or "unavailable" to the user, but within gdb I had
imagined transitioning to an API that reflected that above naming scheme.

Thanks,
Andrew