Jonathan Adam wrote:

> On Fri, Aug 19, 2005 at 05:50:52PM -0700, Dan Mick wrote:

> > :b is a valid command (set a breakpoint at ".").
> > :bp, :bpr, :bprfqoiuer all appear to be accepted. That seems to be a
> > command-parsing bug.  (the remaining characters are treated as an argument 
> > to :b).
> 
> I'm fairly sure this is an ADB-compatibility thing.

(adb) :b syntax is (from mdb(1) manual page):

    address :b [cmd ...]

The stuff following the :b command is the command that will be executed when
we stop at the breakpoint address.  Apparently, syntax errors in the command
string are only recognized when we hit that breakpoint and mdb actually tries to
execute the command associated with the breakpoint.

% mdb /bin/cat
> main:b foobar
> $b
   ID S TA HT LM Description                              Action               
----- - -- -- -- --------------------------------------------------------------
[ 1 ] - T   0  0 stop on SIGINT                           -                    
[ 2 ] - T   0  0 stop on SIGQUIT                          -                    
[ 3 ] - T   0  0 stop on SIGILL                           -                    
[ 4 ] - T   0  0 stop on SIGTRAP                          -                    
[ 5 ] - T   0  0 stop on SIGABRT                          -                    
[ 6 ] - T   0  0 stop on SIGEMT                           -                    
[ 7 ] - T   0  0 stop on SIGFPE                           -                    
[ 8 ] - T   0  0 stop on SIGBUS                           -                    
[ 9 ] - T   0  0 stop on SIGSEGV                          -                    
[ 10] - T   0  0 stop on SIGSYS                           -                    
[ 11] - T   0  0 stop on SIGXCPU                          -                    
[ 12] - T   0  0 stop on SIGXFSZ                          -                    
[ 13] -     0  0 stop at main                             foobar               
> :r
mdb: failed to dereference symbol: unknown symbol name
mdb: failed to eval [ 13 ] command "foobar": failed to evaluate command
mdb: stop at main
mdb: target stopped at:
main:           pushl  %ebp
>
This message posted from opensolaris.org

Reply via email to