[Bug python/25261] [cc-with-dwz-m] FAIL: gdb.python/py-symbol.exp: print (len (gdb.lookup_static_symbols ('rr')))

vries at gcc dot gnu.org sourceware-bugzilla@sourceware.org
Mon Dec 9 11:11:00 GMT 2019


https://sourceware.org/bugzilla/show_bug.cgi?id=25261

--- Comment #2 from Tom de Vries <vries at gcc dot gnu.org> ---
(In reply to Tom de Vries from comment #1)
> This fixes it:
> ...
> diff --git a/gdb/block.c b/gdb/block.c
> index b49c548adc8..899ec053692 100644
> --- a/gdb/block.c
> +++ b/gdb/block.c
> @@ -484,10 +484,12 @@ initialize_block_iterator (const struct block *block,
>        return;
>      }
>  
> +#if 0
>    /* If this is an included symtab, find the canonical includer and
>       use it instead.  */
>    while (cu->user != NULL)
>      cu = cu->user;
> +#endif
>  
>    /* Putting this check here simplifies the logic of the iterator
>       functions.  If there are no included symtabs, we only need to
> ...
> 
> Regression testing (not using cc-with-dwz-m) on x86_64 gets us one extra
> failure, in an artifical test-case:
> ...
> FAIL: gdb.dwarf2/dwz.exp: p the_int
> ...
> Looking at the test-case itself, I don't see how this code could occur in
> reality. Still, it's not bad for gdb to handle this correctly, but I suspect
> the current fix is also effective for cases where we don't want that.

I've also tested this patch with target boards cc-with-dwz and cc-dwz-m, and no
regressions other than the one for gdb.dwarf2/dwz.exp.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


More information about the Gdb-prs mailing list