CDB(I)                       8/15/73                       CDB(I)


     cdb - C debugger


     cdb [ core [ a.out ] ]


     Cdb is a debugger  for  use  with  C  programs.   The  first

     argument  is  a  core-image  file; if not given, ``core'' is

     used.  The second argument is the object program (containing

     a  symbol  table);  if  not  given  ``a.out''  is  used.  An

     acceptable core and object file must both be present.

     Commands to cdb consist of an address, followed by a  single

     command  character.  If no address is given the last-printed

     address is used.  An address may be followed by a comma  and

     a   number,  in  which  case  the  command  applies  to  the

     appropriate number of successive addresses.

     Addresses  are  expressions  composed  of   names,   decimal

     numbers,  and  octal  numbers  (which  begin with ``0'') and

     separated by ``+'' and ``-''.  Evaluation proceeds  left-to-

     right.   The  construction ``name[expression]'' assumes that

     name is a pointer to an integer and  is  equivalent  to  the

     contents of the named cell plus twice the expression.

     The command characters are:

     /    print the addressed words in octal.

     =    print the value of the addressed expression.

     '    print the addressed bytes as characters.

     "    take  the  address  as  a  pointer  to  a  sequence  of

         characters, and print the characters up to a null byte.

     &    If there is any symbol which has the same value as  the

         address, print the symbol's name.

     $    print a stack trace of  the  terminated  program.   The

         calls are listed in the order made; the actual arguments

         to each routine are given in octal.


     cc (I), db (I), C Reference Manual


     It's still very feeble, even  compared  with  db  (I).   The

     stack  trace  is  also  pretty vulnerable to corruption, and

     often doesn't work.