* doc/c-tree.texi (CONSTRUCTOR): Mention RANGE_EXPRs.

From-SVN: r92263
This commit is contained in:
Nathan Sidwell 2004-12-16 14:17:24 +00:00 committed by Nathan Sidwell
parent b75d6babbc
commit fe8e69bb7b
2 changed files with 14 additions and 5 deletions

View File

@ -1,3 +1,7 @@
2004-12-16 Nathan Sidwell <nathan@codesourcery.com>
* doc/c-tree.texi (CONSTRUCTOR): Mention RANGE_EXPRs.
2004-12-16 Mark Dettinger <dettinge@de.ibm.com>
* config/s390/s390.c (struct processor_costs): Two new fields:
@ -705,6 +709,8 @@
2004-12-09 Nathan Sidwell <nathan@codesourcery.com>
* doc/c-tree.texi (CONSTRUCTOR): Mention RANGE_EXPRs.
* tree.def (SET_TYPE): Remove.
(CONSTRUCTOR): Update description.
* builtins.c (type_to_class) Remove SET_TYPE case.

View File

@ -2273,11 +2273,14 @@ expression used to initialize that field.
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{TREE_LIST} will be an @code{INTEGER_CST}. This constant indicates
which element of the array (indexed from zero) is being assigned to;
again, the @code{TREE_VALUE} is the corresponding initializer. If the
@code{TREE_PURPOSE} is @code{NULL_TREE}, then the initializer is for the
next available array element.
@code{TREE_LIST} will be an @code{INTEGER_CST} or a @code{RANGE_EXPR} of
two @code{INTEGER_CST}s. A single @code{INTEGER_CST} indicates which
element of the array (indexed from zero) is being assigned to. A
@code{RANGE_EXPR} indicates an inclusive range of elements to
initialize. In both cases the @code{TREE_VALUE} is the corresponding
initializer. It is re-evaluated for each element of a
@code{RANGE_EXPR}. If the @code{TREE_PURPOSE} is @code{NULL_TREE}, then
the initializer is for the next available array element.
In the front end, you should not depend on the fields appearing in any
particular order. However, in the middle end, fields must appear in