This is the mail archive of the
gdb@sources.redhat.com
mailing list for the GDB project.
Re: GDB's command qualifier character is `/'
- From: Daniel Jacobowitz <drow at mvista dot com>
- To: gdb at sources dot redhat dot com
- Date: Sun, 19 Oct 2003 20:32:48 -0400
- Subject: Re: GDB's command qualifier character is `/'
- References: <3F92C0D2.6050807@gnu.org>
On Sun, Oct 19, 2003 at 12:50:26PM -0400, Andrew Cagney wrote:
> This seems to keep comming up, sigh!
>
> GDB's CLI, long ago established `/' as its command qualifier character vis:
>
> x/i
> display/i
> print/x
>
> GDB's user base is very familar with this syntax(1) so adding new
> qualfiers using this syntax would provide a consistent user experience
> (if there is x/i, how come there isn't "info break/l"?).
>
> In fact, in the case of all these specific commands (including "info
> break/l") trying to switch to UNIX's option syntax vis:
>
> x --i
>
> would be a disaster!
I stand by my previous disagreement with this position.
All of the currently accepted / options that I can find are output
format qualifiers. I find nothing strange or inconsistent about using
a different syntax for options and for output qualifiers. GDB doesn't
have any examples of
break /shlib libc.so.6 round
or
break /shlib:libc.so.6 round
only
print/x round
I don't think x/i is prior art for break /shlib.
> What's unfortunate in all this is that the current CLI code doesn't
> directly parse the qualifier convention. For instance:
>
> (gdb) x<TAB>
> x/i x/b x/8 x/4
> and
> (gdb) load/vma /lma
> (load, using vma addresses, the file "/lma").
Yes, this is unfortunate - at least in the minor bit that it generates
some strange error messages. Almost nothing is centrally parsed in the
CLI and that's a shame.
> (1) Personally, I'm always using the `/' qualifier, but I can't remember
> when, if ever, I used one of the UNIX style command options.
That's because there are very few commands in all of GDB's CLI which
_take_ options. /, -, or otherwise.
--
Daniel Jacobowitz
MontaVista Software Debian GNU/Linux Developer