* 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.
This commit is contained in:
Per Bothner
1993-04-07 22:15:48 +00:00
parent bee218aaac
commit 8a177da658
5 changed files with 152 additions and 104 deletions

View File

@@ -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));