OLD | NEW |
1 /* Ada language support definitions for GDB, the GNU debugger. | 1 /* Ada language support definitions for GDB, the GNU debugger. |
2 | 2 |
3 Copyright (C) 1992, 1997-2005, 2007-2012 Free Software Foundation, | 3 Copyright (C) 1992, 1997-2005, 2007-2012 Free Software Foundation, |
4 Inc. | 4 Inc. |
5 | 5 |
6 This file is part of GDB. | 6 This file is part of GDB. |
7 | 7 |
8 This program is free software; you can redistribute it and/or modify | 8 This program is free software; you can redistribute it and/or modify |
9 it under the terms of the GNU General Public License as published by | 9 it under the terms of the GNU General Public License as published by |
10 the Free Software Foundation; either version 3 of the License, or | 10 the Free Software Foundation; either version 3 of the License, or |
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
73 { | 73 { |
74 const char *encoded; | 74 const char *encoded; |
75 const char *decoded; | 75 const char *decoded; |
76 enum exp_opcode op; | 76 enum exp_opcode op; |
77 }; | 77 }; |
78 | 78 |
79 /* Table of Ada operators in encoded and decoded forms. */ | 79 /* Table of Ada operators in encoded and decoded forms. */ |
80 /* Defined in ada-lang.c */ | 80 /* Defined in ada-lang.c */ |
81 extern const struct ada_opname_map ada_opname_table[]; | 81 extern const struct ada_opname_map ada_opname_table[]; |
82 | 82 |
83 /* A tuple, (symbol, block), representing one instance of a | 83 /* A tuple representing one instance of a symbol-lookup operation. */ |
84 * symbol-lookup operation. */ | 84 |
85 struct ada_symbol_info { | 85 struct ada_symbol_info |
86 struct symbol* sym; | 86 { |
87 struct block* block; | 87 /* The symbol that was found. */ |
| 88 struct symbol *sym; |
| 89 |
| 90 /* The block where the symbol was found. */ |
| 91 struct block *block; |
88 }; | 92 }; |
89 | 93 |
90 /* Denotes a type of renaming symbol (see ada_parse_renaming). */ | 94 /* Denotes a type of renaming symbol (see ada_parse_renaming). */ |
91 enum ada_renaming_category | 95 enum ada_renaming_category |
92 { | 96 { |
93 /* Indicates a symbol that does not encode a renaming. */ | 97 /* Indicates a symbol that does not encode a renaming. */ |
94 ADA_NOT_RENAMING, | 98 ADA_NOT_RENAMING, |
95 | 99 |
96 /* For symbols declared | 100 /* For symbols declared |
97 Foo : TYPE renamed OBJECT; */ | 101 Foo : TYPE renamed OBJECT; */ |
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
157 | 161 |
158 extern void ada_error (char *); /* Defined in ada-exp.y */ | 162 extern void ada_error (char *); /* Defined in ada-exp.y */ |
159 | 163 |
160 /* Defined in ada-typeprint.c */ | 164 /* Defined in ada-typeprint.c */ |
161 extern void ada_print_type (struct type *, const char *, struct ui_file *, int, | 165 extern void ada_print_type (struct type *, const char *, struct ui_file *, int, |
162 int); | 166 int); |
163 | 167 |
164 extern void ada_print_typedef (struct type *type, struct symbol *new_symbol, | 168 extern void ada_print_typedef (struct type *type, struct symbol *new_symbol, |
165 struct ui_file *stream); | 169 struct ui_file *stream); |
166 | 170 |
167 extern int ada_val_print (struct type *, const gdb_byte *, int, CORE_ADDR, | 171 extern void ada_val_print (struct type *, const gdb_byte *, int, CORE_ADDR, |
168 struct ui_file *, int, | 172 » » » struct ui_file *, int, |
169 » » » const struct value *, | 173 » » » const struct value *, |
170 » » » const struct value_print_options *); | 174 » » » const struct value_print_options *); |
171 | 175 |
172 extern int ada_value_print (struct value *, struct ui_file *, | 176 extern void ada_value_print (struct value *, struct ui_file *, |
173 » » » const struct value_print_options *); | 177 » » » const struct value_print_options *); |
174 | 178 |
175 /* Defined in ada-lang.c */ | 179 /* Defined in ada-lang.c */ |
176 | 180 |
177 extern void ada_emit_char (int, struct type *, struct ui_file *, int, int); | 181 extern void ada_emit_char (int, struct type *, struct ui_file *, int, int); |
178 | 182 |
179 extern void ada_printchar (int, struct type *, struct ui_file *); | 183 extern void ada_printchar (int, struct type *, struct ui_file *); |
180 | 184 |
181 extern void ada_printstr (struct ui_file *, struct type *, const gdb_byte *, | 185 extern void ada_printstr (struct ui_file *, struct type *, const gdb_byte *, |
182 unsigned int, const char *, int, | 186 unsigned int, const char *, int, |
183 const struct value_print_options *); | 187 const struct value_print_options *); |
(...skipping 19 matching lines...) Expand all Loading... |
203 extern int ada_is_simple_array_type (struct type *); | 207 extern int ada_is_simple_array_type (struct type *); |
204 | 208 |
205 extern int ada_is_array_descriptor_type (struct type *); | 209 extern int ada_is_array_descriptor_type (struct type *); |
206 | 210 |
207 extern int ada_is_bogus_array_descriptor (struct type *); | 211 extern int ada_is_bogus_array_descriptor (struct type *); |
208 | 212 |
209 extern LONGEST ada_discrete_type_low_bound (struct type *); | 213 extern LONGEST ada_discrete_type_low_bound (struct type *); |
210 | 214 |
211 extern LONGEST ada_discrete_type_high_bound (struct type *); | 215 extern LONGEST ada_discrete_type_high_bound (struct type *); |
212 | 216 |
| 217 extern struct value *ada_get_decoded_value (struct value *value); |
| 218 |
| 219 extern struct type *ada_get_decoded_type (struct type *type); |
| 220 |
213 extern char *ada_decode_symbol (const struct general_symbol_info*); | 221 extern char *ada_decode_symbol (const struct general_symbol_info*); |
214 | 222 |
215 extern const char *ada_decode (const char*); | 223 extern const char *ada_decode (const char*); |
216 | 224 |
217 extern enum language ada_update_initial_language (enum language); | 225 extern enum language ada_update_initial_language (enum language); |
218 | 226 |
219 extern void clear_ada_sym_cache (void); | 227 extern void clear_ada_sym_cache (void); |
220 | 228 |
221 extern int ada_lookup_symbol_list (const char *, const struct block *, | 229 extern int ada_lookup_symbol_list (const char *, const struct block *, |
222 domain_enum, struct ada_symbol_info**); | 230 domain_enum, struct ada_symbol_info**, |
| 231 » » » » int); |
223 | 232 |
224 extern char *ada_fold_name (const char *); | 233 extern char *ada_fold_name (const char *); |
225 | 234 |
226 extern struct symbol *ada_lookup_symbol (const char *, const struct block *, | 235 extern struct symbol *ada_lookup_symbol (const char *, const struct block *, |
227 domain_enum, int *); | 236 domain_enum, int *); |
228 | 237 |
229 extern struct symbol * | 238 extern void ada_lookup_encoded_symbol |
230 ada_lookup_encoded_symbol (const char *, const struct block *, | 239 (const char *name, const struct block *block, domain_enum namespace, |
231 » » » domain_enum namespace, struct block **); | 240 struct ada_symbol_info *symbol_info); |
232 | 241 |
233 extern struct minimal_symbol *ada_lookup_simple_minsym (const char *); | 242 extern struct minimal_symbol *ada_lookup_simple_minsym (const char *); |
234 | 243 |
235 extern void ada_fill_in_ada_prototype (struct symbol *); | 244 extern void ada_fill_in_ada_prototype (struct symbol *); |
236 | 245 |
237 extern int user_select_syms (struct ada_symbol_info *, int, int); | 246 extern int user_select_syms (struct ada_symbol_info *, int, int); |
238 | 247 |
239 extern int get_selections (int *, int, int, int, char *); | 248 extern int get_selections (int *, int, int, int, char *); |
240 | 249 |
241 extern int ada_scan_number (const char *, int, LONGEST *, int *); | 250 extern int ada_scan_number (const char *, int, LONGEST *, int *); |
(...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
314 extern struct value *ada_to_fixed_value (struct value *val); | 323 extern struct value *ada_to_fixed_value (struct value *val); |
315 | 324 |
316 extern struct type *ada_template_to_fixed_record_type_1 (struct type *type, | 325 extern struct type *ada_template_to_fixed_record_type_1 (struct type *type, |
317 const gdb_byte *valaddr
, | 326 const gdb_byte *valaddr
, |
318 CORE_ADDR address, | 327 CORE_ADDR address, |
319 struct value *dval0, | 328 struct value *dval0, |
320 int keep_dynamic_fields
); | 329 int keep_dynamic_fields
); |
321 | 330 |
322 extern int ada_name_prefix_len (const char *); | 331 extern int ada_name_prefix_len (const char *); |
323 | 332 |
324 extern char *ada_type_name (struct type *); | 333 extern const char *ada_type_name (struct type *); |
325 | 334 |
326 extern struct type *ada_find_parallel_type (struct type *, | 335 extern struct type *ada_find_parallel_type (struct type *, |
327 const char *suffix); | 336 const char *suffix); |
328 | 337 |
329 extern LONGEST get_int_var_value (char *, int *); | 338 extern LONGEST get_int_var_value (char *, int *); |
330 | 339 |
331 extern struct symbol *ada_find_any_symbol (const char *name); | 340 extern struct symbol *ada_find_renaming_symbol (struct symbol *name_sym, |
332 | |
333 extern struct type *ada_find_any_type (const char *name); | |
334 | |
335 extern struct symbol *ada_find_renaming_symbol (const char *name, | |
336 struct block *block); | 341 struct block *block); |
337 | 342 |
338 extern int ada_prefer_type (struct type *, struct type *); | 343 extern int ada_prefer_type (struct type *, struct type *); |
339 | 344 |
340 extern struct type *ada_get_base_type (struct type *); | 345 extern struct type *ada_get_base_type (struct type *); |
341 | 346 |
342 extern struct type *ada_check_typedef (struct type *); | 347 extern struct type *ada_check_typedef (struct type *); |
343 | 348 |
344 extern char *ada_encode (const char *); | 349 extern char *ada_encode (const char *); |
345 | 350 |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
377 extern void iterate_over_live_ada_tasks | 382 extern void iterate_over_live_ada_tasks |
378 (ada_task_list_iterator_ftype *iterator); | 383 (ada_task_list_iterator_ftype *iterator); |
379 | 384 |
380 extern int ada_build_task_list (void); | 385 extern int ada_build_task_list (void); |
381 | 386 |
382 extern void print_ada_task_info (struct ui_out *uiout, | 387 extern void print_ada_task_info (struct ui_out *uiout, |
383 char *taskno_str, | 388 char *taskno_str, |
384 struct inferior *inf); | 389 struct inferior *inf); |
385 | 390 |
386 #endif | 391 #endif |
OLD | NEW |