]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commit
gdb: Change "list ." command's error when no debuginfo is available
authorGuinevere Larsen <blarsen@redhat.com>
Tue, 13 Feb 2024 14:36:23 +0000 (15:36 +0100)
committerGuinevere Larsen <blarsen@redhat.com>
Wed, 8 May 2024 17:08:16 +0000 (14:08 -0300)
commite61c7092f7fa93a196eccfb175b0f7d313231b83
tree7e6304adf1d6eb2bf33b5052d743c257990b5c3d
parent189d3013eefb06ed4ccaae8f248842b785f387a1
gdb: Change "list ." command's error when no debuginfo is available

Currently, when a user tries to list the current location, there are 2
different error messages that can happen, either:

    (gdb) list .
    No symbol table is loaded.  Use the "file" command.
or
    (gdb) list .
    No debug information available to print source lines.

The difference here is if gdb can find any symtabs at all or not, which
is not something too important for end-users - and isn't informative at
all. This commit changes it so that the error always says that there
isn't debug information available, with these two variants:

    (gdb) list .
    Insufficient debug info for showing source lines at current PC (0x55555555511d).
or
    (gdb) list .
    Insufficient debug info for showing source lines at default location.

The difference now is if the inferior has started already, which is
controlled by the user and may be useful.

Unfortunately, it isn't as easy to differentiate if the symtab found for
other list parameters is correct, so other invocations, such as "list +"
still retain their original error message.

Co-Authored-By: Simon Marchi <simark@simark.ca>
Reviewed-By: Eli Zaretskii <eliz@gnu.org>
Approved-By: Andrew Burgess <aburgess@redhat.com>
gdb/NEWS
gdb/cli/cli-cmds.c
gdb/testsuite/gdb.base/list-dot-nodebug-extra.c [new file with mode: 0644]
gdb/testsuite/gdb.base/list-dot-nodebug.c [new file with mode: 0644]
gdb/testsuite/gdb.base/list-dot-nodebug.exp [new file with mode: 0644]
gdb/testsuite/gdb.base/list-nodebug.exp