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).