From 8df5a43d64487d03b55a5799f17a6c465e019062 Mon Sep 17 00:00:00 2001 From: jason Date: Thu, 21 Jan 2010 05:49:35 +0000 Subject: * tree.h (TYPE_TRANSPARENT_UNION): Replace with ... (TYPE_TRANSPARENT_AGGR): this, for union and record. * calls.c (initialize argument_information): Handle it. * c-common.c (handle_transparent_union_attribute): Use new name. * c-decl.c (finish_struct): Ditto. * c-typeck.c (type_lists_compatible_p): Ditto. (convert_for_assignment): Use new name and also handle record. * function.c (aggregate_value_p): Handle it. (pass_by_reference): Ditto. (assign_parm_data_types): Ditto. * print-tree.c (print_node): Ditto. * lto-streamer-in.c (unpack_ts_type_value_fields): Ditto. * lto-streamer-out.c (pack_ts_type_value_fields): Ditto. * tree.c (first_field): New fn. gcc/cp/ * mangle.c (write_type): Mangle transparent record as member type. * semantics.c (begin_class_definition): Recognize decimal classes and set TYPE_TRANSPARENT_AGGR. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@156106 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/print-tree.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'gcc/print-tree.c') diff --git a/gcc/print-tree.c b/gcc/print-tree.c index eebd1c35ba1..b5656adcaa3 100644 --- a/gcc/print-tree.c +++ b/gcc/print-tree.c @@ -605,8 +605,9 @@ print_node (FILE *file, const char *prefix, tree node, int indent) /* The transparent-union flag is used for different things in different nodes. */ - if (code == UNION_TYPE && TYPE_TRANSPARENT_UNION (node)) - fputs (" transparent-union", file); + if ((code == UNION_TYPE || code == RECORD_TYPE) + && TYPE_TRANSPARENT_AGGR (node)) + fputs (" transparent-aggr", file); else if (code == ARRAY_TYPE && TYPE_NONALIASED_COMPONENT (node)) fputs (" nonaliased-component", file); -- cgit v1.2.1