- if (retcode == BOUND_FETCH_ERROR)
- fprintf_filtered(stream,"character*???");
- else
- fprintf_filtered(stream,"character*%d",upper_bound);
+ case TYPE_CODE_STRUCT:
+ 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);
+ /* According to the definition,
+ we only print structure elements in case show > 0. */
+ if (show > 0)
+ {
+ fputs_filtered ("\n", stream);
+ for (index = 0; index < TYPE_NFIELDS (type); index++)
+ {
+ f_type_print_base (TYPE_FIELD_TYPE (type, index), stream,
+ show - 1, level + 4);
+ fputs_filtered (" :: ", stream);
+ fputs_filtered (TYPE_FIELD_NAME (type, index), stream);
+ f_type_print_varspec_suffix (TYPE_FIELD_TYPE (type, index),
+ stream, show - 1, 0, 0, 0);
+ fputs_filtered ("\n", stream);
+ }
+ fprintfi_filtered (level, stream, "End Type ");
+ fputs_filtered (TYPE_TAG_NAME (type), stream);