/* Language independent support for printing types for GDB, the GNU debugger.
- Copyright (C) 1986-2014 Free Software Foundation, Inc.
+ Copyright (C) 1986-2015 Free Software Foundation, Inc.
This file is part of GDB.
#include "language.h"
#include "cp-abi.h"
#include "typeprint.h"
-#include "exceptions.h"
#include "valprint.h"
#include <ctype.h>
#include "cli/cli-utils.h"
NEW is the new name for a type TYPE. */
void
-typedef_print (struct type *type, struct symbol *new, struct ui_file *stream)
+typedef_print (struct type *type, struct symbol *newobj, struct ui_file *stream)
{
- LA_PRINT_TYPEDEF (type, new, stream);
+ LA_PRINT_TYPEDEF (type, newobj, stream);
}
/* The default way to print a typedef. */
char *s = NULL;
struct ui_file *stb;
struct cleanup *old_chain;
- volatile struct gdb_exception except;
stb = mem_fileopen ();
old_chain = make_cleanup_ui_file_delete (stb);
- TRY_CATCH (except, RETURN_MASK_ALL)
+ TRY
{
type_print (type, "", stb, -1);
s = ui_file_xstrdup (stb, NULL);
}
- if (except.reason < 0)
- s = NULL;
+ CATCH (except, RETURN_MASK_ALL)
+ {
+ s = NULL;
+ }
+ END_CATCH
do_cleanups (old_chain);
{
if (((TYPE_CODE (type) == TYPE_CODE_PTR)
|| (TYPE_CODE (type) == TYPE_CODE_REF))
- && (TYPE_CODE (TYPE_TARGET_TYPE (type)) == TYPE_CODE_CLASS))
+ && (TYPE_CODE (TYPE_TARGET_TYPE (type)) == TYPE_CODE_STRUCT))
real_type = value_rtti_indirect_type (val, &full, &top, &using_enc);
- else if (TYPE_CODE (type) == TYPE_CODE_CLASS)
+ else if (TYPE_CODE (type) == TYPE_CODE_STRUCT)
real_type = value_rtti_type (val, &full, &top, &using_enc);
}
/* TYPENAME is either the name of a type, or an expression. */
static void
-ptype_command (char *typename, int from_tty)
+ptype_command (char *type_name, int from_tty)
{
- whatis_exp (typename, 1);
+ whatis_exp (type_name, 1);
}
/* Print integral scalar data VAL, of type TYPE, onto stdio stream STREAM.
unsigned int i;
unsigned len;
- CHECK_TYPEDEF (type);
+ type = check_typedef (type);
switch (TYPE_CODE (type))
{
and whatis_command(). */
void
-maintenance_print_type (char *typename, int from_tty)
+maintenance_print_type (char *type_name, int from_tty)
{
struct value *val;
struct type *type;
struct cleanup *old_chain;
struct expression *expr;
- if (typename != NULL)
+ if (type_name != NULL)
{
- expr = parse_expression (typename);
+ expr = parse_expression (type_name);
old_chain = make_cleanup (free_current_contents, &expr);
if (expr->elts[0].opcode == OP_TYPE)
{