ptype_eval PARAMS ((struct expression *));  static void whatis_command PARAMS ((char *, int));  static void whatis_exp PARAMS ((char *, int));    void type_print (type, varstring, stream, show) struct type *type; char *varstring; GDB_FILE *stream; int show; { LA_PRINT_TYPE (type, varstring, stream, show, 0); }    static void whatis_exp (exp, show) char *exp; int show; { struct expression *expr; register value_ptr val; register struct cleanup *old_chain = NULL;  if (exp) { expr = parse_expression (exp); old_chain = make_cleanup (free_current_contents, &expr); val = evaluate_type (expr); } else val = access_value_history (0);  printf_filtered ("type = "); type_print (VALUE_TYPE (val), "", gdb_stdout, show); printf_filtered ("\n");  if (exp) do_cleanups (old_chain); }   static void whatis_command (exp, from_tty) char *exp; int from_tty; {  whatis_exp (exp, -1); }    static struct type * ptype_eval (exp) struct expression *exp;
ptype_eval (struct expression *exp)
ptype_eval PARAMS ((struct expression *));static voidwhatis_command PARAMS ((char *, int));static voidwhatis_exp PARAMS ((char *, int));/* Print a description of a type TYPE in the form of a declaration of a   variable named VARSTRING.  (VARSTRING is demangled if necessary.)   Output goes to STREAM (via stdio).   If SHOW is positive, we show the contents of the outermost level   of structure even if there is a type name that could be used instead.   If SHOW is negative, we never show the details of elements' types.  */voidtype_print (type, varstring, stream, show)     struct type *type;     char *varstring;     GDB_FILE *stream;     int show;{  LA_PRINT_TYPE (type, varstring, stream, show, 0);}/* Print type of EXP, or last thing in value history if EXP == NULL.   show is passed to type_print.  */static voidwhatis_exp (exp, show)     char *exp;     int show;{  struct expression *expr;  register value_ptr val;  register struct cleanup *old_chain = NULL;  if (exp)    {      expr = parse_expression (exp);      old_chain = make_cleanup (free_current_contents, &expr);      val = evaluate_type (expr);    }  else    val = access_value_history (0);  printf_filtered ("type = ");  type_print (VALUE_TYPE (val), "", gdb_stdout, show);  printf_filtered ("\n");  if (exp)    do_cleanups (old_chain);}/* ARGSUSED */static voidwhatis_command (exp, from_tty)     char *exp;     int from_tty;{  /* Most of the time users do not want to see all the fields     in a structure.  If they do they can use the "ptype" command.     Hence the "-1" below.  */  whatis_exp (exp, -1);}/* Simple subroutine for ptype_command.  */static struct type *ptype_eval (exp)     struct expression *exp;{  if (exp->elts[0].opcode == OP_TYPE)    {      return (exp->elts[1].type);    }  else    {      return (NULL);    }}