Commit 98376d4a by James E Wilson Committed by Jim Wilson

Fixes issues pointed out by Chris Lattner.

* doc/c-tree.texi (CONSTRUCTOR): Clarify element order and handling
of missing fields.

From-SVN: r74143
parent 4582b849
2003-12-01 James E Wilson <wilson@specifixinc.com> 2003-12-01 James E Wilson <wilson@specifixinc.com>
* doc/c-tree.texi (CONSTRUCTOR): Clarify element order and handling
of missing fields.
PR target/8407 PR target/8407
* config/ia64/ia64.c (ia64_function_arg): For single-reg HFA, call * config/ia64/ia64.c (ia64_function_arg): For single-reg HFA, call
gen_rtx_REG to create new reg with argument mode. gen_rtx_REG to create new reg with argument mode.
......
...@@ -2234,10 +2234,7 @@ second operand is a @code{TREE_LIST}. If the @code{TREE_TYPE} of the ...@@ -2234,10 +2234,7 @@ second operand is a @code{TREE_LIST}. If the @code{TREE_TYPE} of the
@code{CONSTRUCTOR} is a @code{RECORD_TYPE} or @code{UNION_TYPE}, then @code{CONSTRUCTOR} is a @code{RECORD_TYPE} or @code{UNION_TYPE}, then
the @code{TREE_PURPOSE} of each node in the @code{TREE_LIST} will be a the @code{TREE_PURPOSE} of each node in the @code{TREE_LIST} will be a
@code{FIELD_DECL} and the @code{TREE_VALUE} of each node will be the @code{FIELD_DECL} and the @code{TREE_VALUE} of each node will be the
expression used to initialize that field. You should not depend on the expression used to initialize that field.
fields appearing in any particular order, nor should you assume that all
fields will be represented. Unrepresented fields may be assigned any
value.
If the @code{TREE_TYPE} of the @code{CONSTRUCTOR} is an If the @code{TREE_TYPE} of the @code{CONSTRUCTOR} is an
@code{ARRAY_TYPE}, then the @code{TREE_PURPOSE} of each element in the @code{ARRAY_TYPE}, then the @code{TREE_PURPOSE} of each element in the
...@@ -2247,8 +2244,10 @@ again, the @code{TREE_VALUE} is the corresponding initializer. If the ...@@ -2247,8 +2244,10 @@ again, the @code{TREE_VALUE} is the corresponding initializer. If the
@code{TREE_PURPOSE} is @code{NULL_TREE}, then the initializer is for the @code{TREE_PURPOSE} is @code{NULL_TREE}, then the initializer is for the
next available array element. next available array element.
Conceptually, before any initialization is done, the entire area of In the front end, you should not depend on the fields appearing in any
storage is initialized to zero. particular order. However, in the middle end, fields must appear in
declaration order. You should not assume that all fields will be
represented. Unrepresented fields will be set to zero.
@item COMPOUND_LITERAL_EXPR @item COMPOUND_LITERAL_EXPR
@findex COMPOUND_LITERAL_EXPR_DECL_STMT @findex COMPOUND_LITERAL_EXPR_DECL_STMT
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment