* eval.c (evaluate_subexp_standard): Use value_subscripted_rvalue for

multi_f77_subscript to support values from registers.
	* valarith.c (value_subscripted_rvalue): Remove prototype and static.
	* value.h (value_subscripted_rvalue): Add prototype.

	* f-typeprint.c (f_type_print_base): Add support for TYPE_CODE_UNION.
	Fix output.
	* f-valprint.c (f_val_print): Likewise.
This commit is contained in:
Markus Deuling
2008-04-22 06:53:18 +00:00
parent 68837c9d8d
commit 9eec4d1e39
6 changed files with 28 additions and 8 deletions

View File

@@ -368,14 +368,22 @@ f_type_print_base (struct type *type, struct ui_file *stream, int show,
break;
case TYPE_CODE_STRUCT:
fprintfi_filtered (level, stream, "Type ");
case TYPE_CODE_UNION:
if (TYPE_CODE (type) == TYPE_CODE_UNION)
fprintfi_filtered (level, stream, "Type, C_Union :: ");
else
fprintfi_filtered (level, stream, "Type ");
fputs_filtered (TYPE_TAG_NAME (type), stream);
fputs_filtered ("\n", stream);
for (index = 0; index < TYPE_NFIELDS (type); index++)
{
f_print_type (TYPE_FIELD_TYPE (type, index), "", stream, show, level + 4);
f_type_print_base (TYPE_FIELD_TYPE (type, index), stream, show,
level + 4);
fputs_filtered (" :: ", stream);
fputs_filtered (TYPE_FIELD_NAME (type, index), stream);
fprintfi_filtered (level, stream, "%s",
TYPE_FIELD_NAME (type, index));
f_type_print_varspec_suffix (TYPE_FIELD_TYPE (type, index),
stream, 0, 0, 0);
fputs_filtered ("\n", stream);
}
fprintfi_filtered (level, stream, "End Type ");