summaryrefslogtreecommitdiff
path: root/gdb/ada-lang.h
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/ada-lang.h')
-rw-r--r--gdb/ada-lang.h35
1 files changed, 30 insertions, 5 deletions
diff --git a/gdb/ada-lang.h b/gdb/ada-lang.h
index 307ca216640..0bef685d7a4 100644
--- a/gdb/ada-lang.h
+++ b/gdb/ada-lang.h
@@ -173,6 +173,28 @@ struct ada_symbol_info {
struct symtab* symtab;
};
+/* Denotes a type of renaming symbol (see ada_parse_renaming). */
+enum ada_renaming_category
+ {
+ /* Indicates a symbol that does not encode a renaming. */
+ ADA_NOT_RENAMING,
+
+ /* For symbols declared
+ Foo : TYPE renamed OBJECT; */
+ ADA_OBJECT_RENAMING,
+
+ /* For symbols declared
+ Foo : exception renames EXCEPTION; */
+ ADA_EXCEPTION_RENAMING,
+ /* For packages declared
+ package Foo renames PACKAGE; */
+ ADA_PACKAGE_RENAMING,
+ /* For subprograms declared
+ SUBPROGRAM_SPEC renames SUBPROGRAM;
+ (Currently not used). */
+ ADA_SUBPROGRAM_RENAMING
+ };
+
/* Ada task structures. */
/* Ada task control block, as defined in the GNAT runt-time library. */
@@ -301,6 +323,11 @@ extern struct symbol *ada_lookup_symbol (const char *, const struct block *,
domain_enum, int *,
struct symtab **);
+extern struct symbol *
+ada_lookup_encoded_symbol (const char *, const struct block *,
+ domain_enum namespace,
+ struct block **, struct symtab **);
+
extern struct minimal_symbol *ada_lookup_simple_minsym (const char *);
extern void ada_fill_in_ada_prototype (struct symbol *);
@@ -438,11 +465,9 @@ extern void ada_print_scalar (struct type *, LONGEST, struct ui_file *);
extern int ada_is_range_type_name (const char *);
-extern const char *ada_renaming_type (struct type *);
-
-extern int ada_is_object_renaming (struct symbol *);
-
-extern char *ada_simple_renamed_entity (struct symbol *);
+extern enum ada_renaming_category ada_parse_renaming (struct symbol *,
+ const char **,
+ int *, const char **);
extern char *ada_breakpoint_rewrite (char *, int *);