public inbox for gdb-prs@sourceware.org
help / color / mirror / Atom feed
* [Bug python/14639] New: gdb.parameter doesn't flag ambiguous parameter spellings
@ 2012-09-27 23:13 dje at google dot com
  2023-12-15 18:40 ` [Bug python/14639] " ssbssa at sourceware dot org
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: dje at google dot com @ 2012-09-27 23:13 UTC (permalink / raw)
  To: gdb-prs


http://sourceware.org/bugzilla/show_bug.cgi?id=14639

             Bug #: 14639
           Summary: gdb.parameter doesn't flag ambiguous parameter
                    spellings
           Product: gdb
           Version: HEAD
            Status: NEW
          Severity: normal
          Priority: P2
         Component: python
        AssignedTo: unassigned@sourceware.org
        ReportedBy: dje@google.com
    Classification: Unclassified


GNU gdb (GDB) 7.5.50.20120927-cvs
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
(gdb) py import gdb
(gdb) set print sym on
Ambiguous set print command "sym on": symbol, symbol-filename.
(gdb) py print gdb.parameter("print sym")
False
(gdb) 


Code that needs to work with multiple gdb versions should be able to rely on
gdb.parameter raising an exception if setting that parameter is an error.

-- 
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.


^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Bug python/14639] gdb.parameter doesn't flag ambiguous parameter spellings
  2012-09-27 23:13 [Bug python/14639] New: gdb.parameter doesn't flag ambiguous parameter spellings dje at google dot com
@ 2023-12-15 18:40 ` ssbssa at sourceware dot org
  2023-12-16  0:22 ` tromey at sourceware dot org
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 5+ messages in thread
From: ssbssa at sourceware dot org @ 2023-12-15 18:40 UTC (permalink / raw)
  To: gdb-prs

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

Hannes Domani <ssbssa at sourceware dot org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |ssbssa at sourceware dot org

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

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Bug python/14639] gdb.parameter doesn't flag ambiguous parameter spellings
  2012-09-27 23:13 [Bug python/14639] New: gdb.parameter doesn't flag ambiguous parameter spellings dje at google dot com
  2023-12-15 18:40 ` [Bug python/14639] " ssbssa at sourceware dot org
@ 2023-12-16  0:22 ` tromey at sourceware dot org
  2024-02-07 19:01 ` cvs-commit at gcc dot gnu.org
  2024-02-07 19:02 ` ssbssa at sourceware dot org
  3 siblings, 0 replies; 5+ messages in thread
From: tromey at sourceware dot org @ 2023-12-16  0:22 UTC (permalink / raw)
  To: gdb-prs

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

Tom Tromey <tromey at sourceware dot org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |tromey at sourceware dot org

--- Comment #1 from Tom Tromey <tromey at sourceware dot org> ---
I heard of an OS once that only allowed command abbreviations
interactively -- scripts had to use the full name.
I wish we'd done this with the Python API.

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

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Bug python/14639] gdb.parameter doesn't flag ambiguous parameter spellings
  2012-09-27 23:13 [Bug python/14639] New: gdb.parameter doesn't flag ambiguous parameter spellings dje at google dot com
  2023-12-15 18:40 ` [Bug python/14639] " ssbssa at sourceware dot org
  2023-12-16  0:22 ` tromey at sourceware dot org
@ 2024-02-07 19:01 ` cvs-commit at gcc dot gnu.org
  2024-02-07 19:02 ` ssbssa at sourceware dot org
  3 siblings, 0 replies; 5+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2024-02-07 19:01 UTC (permalink / raw)
  To: gdb-prs

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

--- Comment #2 from Sourceware Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Hannes Domani <ssbssa@sourceware.org>:

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=276d9db22d768e6904937b8def1b05771588092b

commit 276d9db22d768e6904937b8def1b05771588092b
Author: Hannes Domani <ssbssa@yahoo.de>
Date:   Wed Feb 7 19:59:29 2024 +0100

    Raise exception if ambiguous name is used in gdb.parameter

    Currently gdb.parameter doesn't raise an exception if an
    ambiguous name is used, it instead returns the value of the
    last partly matching parameter:
    ```
    (gdb) show print sym
    Ambiguous show print command "sym": symbol, symbol-filename,
symbol-loading.
    (gdb) show print symbol-loading
    Printing of symbol loading messages is "full".
    (gdb) py print(gdb.parameter("print sym"))
    full
    ```

    It's because lookup_cmd_composition_1 tries to detect
    ambigous names by checking the return value of find_cmd
    for CMD_LIST_AMBIGUOUS, which never happens, since only
    lookup_cmd_1 returns CMD_LIST_AMBIGUOUS.
    Instead the nfound argument contains the number of found
    matches.

    By using it instead, and by setting *CMD to the special value
    CMD_LIST_AMBIGUOUS in this case, gdbpy_parameter can now show
    the appropriate error message:
    ```
    (gdb) py print(gdb.parameter("print sym"))
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
    RuntimeError: Parameter `print sym' is ambiguous.
    Error while executing Python code.
    (gdb) py print(gdb.parameter("print symbol"))
    True
    (gdb) py print(gdb.parameter("print symbol-"))
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
    RuntimeError: Parameter `print symbol-' is ambiguous.
    Error while executing Python code.
    (gdb) py print(gdb.parameter("print symbol-load"))
    full
    ```

    Since the document command also uses lookup_cmd_composition, it needed
    to check for CMD_LIST_AMBIGUOUS as well, so it now also shows an
    "Ambiguous command" error message in this case.

    Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=14639
    Approved-By: Tom Tromey <tom@tromey.com>

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

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Bug python/14639] gdb.parameter doesn't flag ambiguous parameter spellings
  2012-09-27 23:13 [Bug python/14639] New: gdb.parameter doesn't flag ambiguous parameter spellings dje at google dot com
                   ` (2 preceding siblings ...)
  2024-02-07 19:01 ` cvs-commit at gcc dot gnu.org
@ 2024-02-07 19:02 ` ssbssa at sourceware dot org
  3 siblings, 0 replies; 5+ messages in thread
From: ssbssa at sourceware dot org @ 2024-02-07 19:02 UTC (permalink / raw)
  To: gdb-prs

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

Hannes Domani <ssbssa at sourceware dot org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
   Target Milestone|---                         |15.1
         Resolution|---                         |FIXED

--- Comment #3 from Hannes Domani <ssbssa at sourceware dot org> ---
Fixed.

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

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2024-02-07 19:02 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-09-27 23:13 [Bug python/14639] New: gdb.parameter doesn't flag ambiguous parameter spellings dje at google dot com
2023-12-15 18:40 ` [Bug python/14639] " ssbssa at sourceware dot org
2023-12-16  0:22 ` tromey at sourceware dot org
2024-02-07 19:01 ` cvs-commit at gcc dot gnu.org
2024-02-07 19:02 ` ssbssa at sourceware dot org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).