/* Ada language support definitions for GDB, the GNU debugger.
- Copyright (C) 1992, 1997-2005, 2007-2012 Free Software Foundation,
- Inc.
+ Copyright (C) 1992-2013 Free Software Foundation, Inc.
This file is part of GDB.
struct frame_info;
struct inferior;
+struct type_print_options;
#include "value.h"
#include "gdbtypes.h"
#if !defined (ADA_KNOWN_RUNTIME_FILE_NAME_PATTERNS)
#define ADA_KNOWN_RUNTIME_FILE_NAME_PATTERNS \
+ "^unwind-seh.c$", \
"^[agis]-.*\\.ad[bs]$",
#endif
struct symbol *sym;
/* The block where the symbol was found. */
- struct block *block;
+ const struct block *block;
};
/* Denotes a type of renaming symbol (see ada_parse_renaming). */
/* Defined in ada-typeprint.c */
extern void ada_print_type (struct type *, const char *, struct ui_file *, int,
- int);
+ int, const struct type_print_options *);
extern void ada_print_typedef (struct type *type, struct symbol *new_symbol,
struct ui_file *stream);
extern struct type *ada_get_decoded_type (struct type *type);
-extern char *ada_decode_symbol (const struct general_symbol_info*);
+extern const char *ada_decode_symbol (const struct general_symbol_info *);
extern const char *ada_decode (const char*);
extern void clear_ada_sym_cache (void);
extern int ada_lookup_symbol_list (const char *, const struct block *,
- domain_enum, struct ada_symbol_info**,
- int);
+ domain_enum, struct ada_symbol_info**);
extern char *ada_fold_name (const char *);
extern struct symbol *ada_lookup_symbol (const char *, const struct block *,
domain_enum, int *);
-extern struct symbol *
-ada_lookup_encoded_symbol (const char *, const struct block *,
- domain_enum namespace, struct block **);
+extern void ada_lookup_encoded_symbol
+ (const char *name, const struct block *block, domain_enum namespace,
+ struct ada_symbol_info *symbol_info);
extern struct minimal_symbol *ada_lookup_simple_minsym (const char *);
extern const char *ada_tag_name (struct value *);
+extern struct value *ada_tag_value_at_base_address (struct value *obj);
+
extern int ada_is_parent_field (struct type *, int);
extern int ada_is_wrapper_field (struct type *, int);
extern LONGEST get_int_var_value (char *, int *);
extern struct symbol *ada_find_renaming_symbol (struct symbol *name_sym,
- struct block *block);
+ const struct block *block);
extern int ada_prefer_type (struct type *, struct type *);