aboutsummaryrefslogtreecommitdiff
path: root/gdb/stabsread.c
diff options
context:
space:
mode:
authorPer Bothner <per@bothner.com>1993-04-07 22:15:48 +0000
committerPer Bothner <per@bothner.com>1993-04-07 22:15:48 +0000
commit8a177da6582bc176c0dd3b58583c8096674ea853 (patch)
treefd3dcf916ad17d96e1e1ef19f817df1af9c8737d /gdb/stabsread.c
parentbee218aaac30e76d6a530d6656ff576cd1f2a618 (diff)
downloadgdb-8a177da6582bc176c0dd3b58583c8096674ea853.zip
gdb-8a177da6582bc176c0dd3b58583c8096674ea853.tar.gz
gdb-8a177da6582bc176c0dd3b58583c8096674ea853.tar.bz2
* ch-exp.y: Remove ambiguities. Fix or add support for
UNOP_IND, UNOP_CAST, UNOP_ADDR, STRUCOP_STRUCT, OP_TYPE. * ch-typeprint.c (chill_print_type): Move support for TYPE_CODE_ARRAY and TYPE_CODE_STRING from here ... * ch-typeprint.c (chill_type_print_base): ... here. * ch-typeprint.c (chill_type_print_base): Improve support for PTR, REF, and FUNC types. * ch-valprint.c: Prefer H'%x format to 0x%s. * ch-valprint.c (chill_val_print): Add support for printing TYPE_CODE_REF (return for LOC parameters and variables). Use c_val_print to print random types (including ENUM). * ch-valprint,c (chill_print_value_fields): Make output look more like Chill tuples. * stabsread.c (read_struct_type): Factor common code.
Diffstat (limited to 'gdb/stabsread.c')
-rw-r--r--gdb/stabsread.c32
1 files changed, 6 insertions, 26 deletions
diff --git a/gdb/stabsread.c b/gdb/stabsread.c
index 170dbe8..52c6c72 100644
--- a/gdb/stabsread.c
+++ b/gdb/stabsread.c
@@ -2370,32 +2370,12 @@ read_struct_type (pp, type, objfile)
member functions, attach them to the type, and then read any tilde
field (baseclass specifier for the class holding the main vtable). */
- if (!read_baseclasses (&fi, pp, type, objfile))
- {
- do_cleanups (back_to);
- return (error_type (pp));
- }
- if (!read_struct_fields (&fi, pp, type, objfile))
- {
- do_cleanups (back_to);
- return (error_type (pp));
- }
- if (!attach_fields_to_type (&fi, type, objfile))
- {
- do_cleanups (back_to);
- return (error_type (pp));
- }
- if (!read_member_functions (&fi, pp, type, objfile))
- {
- do_cleanups (back_to);
- return (error_type (pp));
- }
- if (!attach_fn_fields_to_type (&fi, type))
- {
- do_cleanups (back_to);
- return (error_type (pp));
- }
- if (!read_tilde_fields (&fi, pp, type, objfile))
+ if (!read_baseclasses (&fi, pp, type, objfile)
+ || !read_struct_fields (&fi, pp, type, objfile)
+ || !attach_fields_to_type (&fi, type, objfile)
+ || !read_member_functions (&fi, pp, type, objfile)
+ || !attach_fn_fields_to_type (&fi, type)
+ || !read_tilde_fields (&fi, pp, type, objfile))
{
do_cleanups (back_to);
return (error_type (pp));