aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog31
-rw-r--r--gcc/c-common.c2
-rw-r--r--gcc/cfgrtl.c2
-rw-r--r--gcc/collect2.c4
-rw-r--r--gcc/cpplex.c6
-rw-r--r--gcc/doc/c-tree.texi4
-rw-r--r--gcc/doc/cpp.texi6
-rw-r--r--gcc/doc/extend.texi2
-rw-r--r--gcc/doc/invoke.texi4
-rw-r--r--gcc/doc/objc.texi2
-rw-r--r--gcc/doc/tm.texi4
-rw-r--r--gcc/doloop.c4
-rw-r--r--gcc/dwarf2out.c6
-rw-r--r--gcc/dwarfout.c2
-rw-r--r--gcc/expr.c6
-rw-r--r--gcc/fold-const.c2
-rw-r--r--gcc/gcc.c2
-rw-r--r--gcc/gcov.c2
-rw-r--r--gcc/gcse.c2
-rw-r--r--gcc/global.c2
-rw-r--r--gcc/ifcvt.c2
-rw-r--r--gcc/loop.c2
-rw-r--r--gcc/optabs.c2
-rw-r--r--gcc/protoize.c2
-rw-r--r--gcc/regclass.c2
-rw-r--r--gcc/reorg.c2
-rw-r--r--gcc/rtl.h2
-rw-r--r--gcc/stmt.c4
-rw-r--r--gcc/tree.h2
29 files changed, 73 insertions, 42 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index db70f0d..ded5bb7 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,34 @@
+2001-10-09 Kazu Hirata <kazu@hxi.com>
+
+ * c-common.c: Fix comment typos.
+ * cfgrtl.c: Likewise.
+ * collect2.c: Likewise.
+ * cpplex.c: Likewise.
+ * doloop.c: Likewise.
+ * dwarf2out.c: Likewise.
+ * dwarfout.c: Likewise.
+ * expr.c: Likewise.
+ * fold-const.c: Likewise.
+ * gcc.c: Likewise.
+ * gcov.c: Likewise.
+ * gcse.c: Likewise.
+ * global.c: Likewise.
+ * ifcvt.c: Likewise.
+ * loop.c: Likewise.
+ * optabs.c: Likewise.
+ * protoize.c: Likewise.
+ * regclass.c: Likewise.
+ * reorg.c: Likewise.
+ * rtl.h: Likewise.
+ * stmt.c: Likewise.
+ * tree.h: Likewise.
+ * doc/cpp.texi: Likewise.
+ * doc/c-tree.texi: Likewise.
+ * doc/extend.texi: Likewise.
+ * doc/invoke.texi: Likewise.
+ * doc/objc.texi: Likewise.
+ * doc/tm.texi: Likewise.
+
2001-10-08 Richard Henderson <rth@redhat.com>
* varasm.c (set_named_section_flags): Initialize "declared".
diff --git a/gcc/c-common.c b/gcc/c-common.c
index 73bfcf0..5ad4d92 100644
--- a/gcc/c-common.c
+++ b/gcc/c-common.c
@@ -1969,7 +1969,7 @@ truthvalue_conversion (expr)
return real_zerop (expr) ? boolean_false_node : boolean_true_node;
case ADDR_EXPR:
- /* If we are taking the address of a external decl, it might be zero
+ /* If we are taking the address of an external decl, it might be zero
if it is weak, so we cannot optimize. */
if (DECL_P (TREE_OPERAND (expr, 0))
&& DECL_EXTERNAL (TREE_OPERAND (expr, 0)))
diff --git a/gcc/cfgrtl.c b/gcc/cfgrtl.c
index f5e6785..c075731 100644
--- a/gcc/cfgrtl.c
+++ b/gcc/cfgrtl.c
@@ -874,7 +874,7 @@ redirect_edge_and_branch (e, target)
return true;
}
-/* Like force_nonfallthru bellow, but additionally performs redirection
+/* Like force_nonfallthru below, but additionally performs redirection
Used by redirect_edge_and_branch_force. */
static basic_block
diff --git a/gcc/collect2.c b/gcc/collect2.c
index 7b5078c..297f769 100644
--- a/gcc/collect2.c
+++ b/gcc/collect2.c
@@ -2321,7 +2321,7 @@ libcompare (d1, d2)
/* It has a valid numeric extension, prefer this one. */
if (*e1 == '.' && e1[1] && ISDIGIT (e1[1]))
return 1;
- /* It has a invalid numeric extension, must prefer the other one. */
+ /* It has an invalid numeric extension, must prefer the other one. */
else
return -1;
}
@@ -2330,7 +2330,7 @@ libcompare (d1, d2)
/* It has a valid numeric extension, prefer this one. */
if (*e2 == '.' && e2[1] && ISDIGIT (e2[1]))
return -1;
- /* It has a invalid numeric extension, must prefer the other one. */
+ /* It has an invalid numeric extension, must prefer the other one. */
else
return 1;
}
diff --git a/gcc/cpplex.c b/gcc/cpplex.c
index 02bf7c6..3ea3261 100644
--- a/gcc/cpplex.c
+++ b/gcc/cpplex.c
@@ -575,7 +575,7 @@ parse_identifier_slow (pfile, cur)
/* Remember the next character. */
buffer->read_ahead = c;
- /* $ is not a identifier character in the standard, but is commonly
+ /* $ is not an identifier character in the standard, but is commonly
accepted as an extension. Don't warn about it in skipped
conditional blocks. */
if (saw_dollar && CPP_PEDANTIC (pfile) && ! pfile->state.skipping)
@@ -2126,7 +2126,7 @@ _cpp_get_buff (pfile, min_size)
return result;
}
-/* Creates a new buffer with enough space to hold the the uncommitted
+/* Creates a new buffer with enough space to hold the uncommitted
remaining bytes of BUFF, and at least MIN_EXTRA more bytes. Copies
the excess bytes to the new buffer. Chains the new buffer after
BUFF, and returns the new buffer. */
@@ -2144,7 +2144,7 @@ _cpp_append_extend_buff (pfile, buff, min_extra)
return new_buff;
}
-/* Creates a new buffer with enough space to hold the the uncommitted
+/* Creates a new buffer with enough space to hold the uncommitted
remaining bytes of the buffer pointed to by BUFF, and at least
MIN_EXTRA more bytes. Copies the excess bytes to the new buffer.
Chains the new buffer before the buffer pointed to by BUFF, and
diff --git a/gcc/doc/c-tree.texi b/gcc/doc/c-tree.texi
index e36090a..a5c5fec 100644
--- a/gcc/doc/c-tree.texi
+++ b/gcc/doc/c-tree.texi
@@ -1423,7 +1423,7 @@ fields.
@item CASE_LABEL
Use to represent a @code{case} label, range of @code{case} labels, or a
-@code{default} label. If @code{CASE_LOW} is @code{NULL_TREE}, then this is a a
+@code{default} label. If @code{CASE_LOW} is @code{NULL_TREE}, then this is a
@code{default} label. Otherwise, if @code{CASE_HIGH} is @code{NULL_TREE}, then
this is an ordinary @code{case} label. In this case, @code{CASE_LOW} is
an expression giving the value of the label. Both @code{CASE_LOW} and
@@ -1800,7 +1800,7 @@ as a signed or unsigned quantity depending on the type of the constant.
In general, the expression given above will overflow, so it should not
be used to calculate the value of the constant.
-The variable @code{integer_zero_node} is a integer constant with value
+The variable @code{integer_zero_node} is an integer constant with value
zero. Similarly, @code{integer_one_node} is an integer constant with
value one. The @code{size_zero_node} and @code{size_one_node} variables
are analogous, but have type @code{size_t} rather than @code{int}.
diff --git a/gcc/doc/cpp.texi b/gcc/doc/cpp.texi
index 1d7dfd6..a9736cd 100644
--- a/gcc/doc/cpp.texi
+++ b/gcc/doc/cpp.texi
@@ -32,7 +32,7 @@ or Back-Cover Texts.
@macro covertexts
This manual contains no Invariant Sections. The Front-Cover Texts are
-(a) (see below), and the the Back-Cover Texts are (b) (see below).
+(a) (see below), and the Back-Cover Texts are (b) (see below).
(a) The FSF's Front-Cover Text is:
@@ -1956,7 +1956,7 @@ expands to nothing, but in the @code{m68k-coff} environment it expands
to a single @samp{%}.
@item __USER_LABEL_PREFIX__
-This macro expands to a single token which is the the prefix applied to
+This macro expands to a single token which is the prefix applied to
user labels (symbols visible to C code) in assembly. For example, in
the @code{m68k-aout} environment it expands to an @samp{_}, but in the
@code{m68k-coff} environment it expands to nothing.
@@ -3610,7 +3610,7 @@ simultaneously true.
@cindex assertions, cancelling
@findex #unassert
-Assertions can be cancelled with the the @samp{#unassert} directive. It
+Assertions can be cancelled with the @samp{#unassert} directive. It
has the same syntax as @samp{#assert}. In that form it cancels only the
answer which was specified on the @samp{#unassert} line; other answers
for that predicate remain true. You can cancel an entire predicate by
diff --git a/gcc/doc/extend.texi b/gcc/doc/extend.texi
index be659203..41588b0d 100644
--- a/gcc/doc/extend.texi
+++ b/gcc/doc/extend.texi
@@ -2523,7 +2523,7 @@ to relate to the structure, union or enumerated type defined, not to any
enclosing declaration the type specifier appears in, and the type
defined is not complete until after the attribute specifiers.
@c Otherwise, there would be the following problems: a shift/reduce
-@c conflict between attributes binding the the struct/union/enum and
+@c conflict between attributes binding the struct/union/enum and
@c binding to the list of specifiers/qualifiers; and "aligned"
@c attributes could use sizeof for the structure, but the size could be
@c changed later by "packed" attributes.
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index 66c0816..0588c1a 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -1669,7 +1669,7 @@ behaviour.
@item -fdiagnostics-show-location=every-line
Only meaningful in line-wrapping mode. Instructs the diagnostic
messages reporter to emit the same source location information (as
-prefix) for physical lines that result from the process of breaking a
+prefix) for physical lines that result from the process of breaking
a message which is too long to fit on a single line.
@end table
@@ -3791,7 +3791,7 @@ that contain more that a certain number of instructions. You can
control some of these constants on the command-line using the
@option{--param} option.
-In each case, the @var{value} is a integer. The allowable choices for
+In each case, the @var{value} is an integer. The allowable choices for
@var{name} are given in the following table:
@table @gcctabopt
diff --git a/gcc/doc/objc.texi b/gcc/doc/objc.texi
index f23e3d0..d3fd775 100644
--- a/gcc/doc/objc.texi
+++ b/gcc/doc/objc.texi
@@ -251,7 +251,7 @@ The non-atomic types are encoded as follows:
@end multitable
Here are some types and their encodings, as they are generated by the
-compiler on a i386 machine:
+compiler on an i386 machine:
@sp 1
diff --git a/gcc/doc/tm.texi b/gcc/doc/tm.texi
index 193a060..32229d6 100644
--- a/gcc/doc/tm.texi
+++ b/gcc/doc/tm.texi
@@ -8776,7 +8776,7 @@ built-in function.
@findex MD_CAN_REDIRECT_BRANCH
@item MD_CAN_REDIRECT_BRANCH(@var{branch1}, @var{branch2})
-Take a branch insn in @var{branch1} and a another in @var{branch2}.
+Take a branch insn in @var{branch1} and another in @var{branch2}.
Return true if redirecting @var{branch1} to the destination of
@var{branch2} is possible.
@@ -8788,7 +8788,7 @@ may in turn cause a branch offset to overflow.
@item ALLOCATE_INITIAL_VALUE(@var{hard_reg})
When the initial value of a hard register has been copied in a pseudo
-register, it is often not necessary to actually allocate a another register
+register, it is often not necessary to actually allocate another register
to this pseudo register, because the original hard register or a stack slot
it has been saved into can be used. @code{ALLOCATE_INITIAL_VALUE}, if
defined, is called at the start of register allocation once for each
diff --git a/gcc/doloop.c b/gcc/doloop.c
index 283080b..849f30e 100644
--- a/gcc/doloop.c
+++ b/gcc/doloop.c
@@ -141,7 +141,7 @@ doloop_condition_get (pattern)
/* Return an estimate of the maximum number of loop iterations for the
loop specified by LOOP or zero if the loop is not normal.
MODE is the mode of the iteration count and NONNEG is non-zero if
- the the iteration count has been proved to be non-negative. */
+ the iteration count has been proved to be non-negative. */
static unsigned HOST_WIDE_INT
doloop_iterations_max (loop_info, mode, nonneg)
const struct loop_info *loop_info;
@@ -336,7 +336,7 @@ doloop_valid_p (loop, jump_insn)
/* There is no guarantee that a NE loop will terminate if the
absolute increment is not unity. ??? We could compute this
- condition at run-time and have a additional jump around the loop
+ condition at run-time and have an additional jump around the loop
to ensure an infinite loop. */
if (loop_info->comparison_code == NE
&& INTVAL (loop_info->increment) != -1
diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c
index 8857d9b..c7d17ec 100644
--- a/gcc/dwarf2out.c
+++ b/gcc/dwarf2out.c
@@ -8737,7 +8737,7 @@ add_bound_info (subrange_die, bound_attr, bound)
they have to deal with empty upper bounds location descriptions
anyway in order to be able to deal with incomplete array types.
Of course an intelligent debugger (GDB?) should be able to
- comprehend that a missing upper bound specification in a array
+ comprehend that a missing upper bound specification in an array
type used for a storage class `auto' local array variable
indicates that the upper bound is both unknown (at compile- time)
and unknowable (at run-time) due to optimization.
@@ -9833,7 +9833,7 @@ gen_subprogram_die (decl, context_die)
instance, if it has duplicate function definitions. Ideally,
we should detect this case and ignore it. For now, if we have
already reported an error, any error at all, then assume that
- we got here because of a input error, not a dwarf2 bug. */
+ we got here because of an input error, not a dwarf2 bug. */
if (errorcount)
return;
abort ();
@@ -10000,7 +10000,7 @@ gen_subprogram_die (decl, context_die)
gen_decl_die (parm, subr_die);
}
- /* Decide whether we need a unspecified_parameters DIE at the end.
+ /* Decide whether we need an unspecified_parameters DIE at the end.
There are 2 more cases to do this for: 1) the ansi ... declaration -
this is detectable when the end of the arg list is not a
void_type_node 2) an unprototyped function declaration (not a
diff --git a/gcc/dwarfout.c b/gcc/dwarfout.c
index d51d575..abc24bd 100644
--- a/gcc/dwarfout.c
+++ b/gcc/dwarfout.c
@@ -5428,7 +5428,7 @@ output_decl (decl, containing_scope)
output_pending_types_for_scope (decl);
/*
- Decide whether we need a unspecified_parameters DIE at the end.
+ Decide whether we need an unspecified_parameters DIE at the end.
There are 2 more cases to do this for:
1) the ansi ... declaration - this is detectable when the end
of the arg list is not a void_type_node
diff --git a/gcc/expr.c b/gcc/expr.c
index 130b3e1..a620103 100644
--- a/gcc/expr.c
+++ b/gcc/expr.c
@@ -2683,7 +2683,7 @@ clear_storage (object, size, align)
/* We need to make an argument list for the function call.
memset has three arguments, the first is a void * addresses, the
- second a integer with the initialization value, the last is a
+ second an integer with the initialization value, the last is a
size_t byte count for the copy. */
arg_list
= build_tree_list (NULL_TREE,
@@ -3125,7 +3125,7 @@ push_block (size, extra, below)
}
-/* Return an rtx for the address of the beginning of a as-if-it-was-pushed
+/* Return an rtx for the address of the beginning of an as-if-it-was-pushed
block of SIZE bytes. */
static rtx
@@ -5836,7 +5836,7 @@ safe_from_p (x, exp, top_p)
return safe_from_p (x, TREE_OPERAND (exp, 1), 0);
case METHOD_CALL_EXPR:
- /* This takes a rtx argument, but shouldn't appear here. */
+ /* This takes an rtx argument, but shouldn't appear here. */
abort ();
default:
diff --git a/gcc/fold-const.c b/gcc/fold-const.c
index 484d9c6..37a0219 100644
--- a/gcc/fold-const.c
+++ b/gcc/fold-const.c
@@ -517,7 +517,7 @@ rrotate_double (l1, h1, count, prec, lv, hv)
CODE is a tree code for a kind of division, one of
TRUNC_DIV_EXPR, FLOOR_DIV_EXPR, CEIL_DIV_EXPR, ROUND_DIV_EXPR
or EXACT_DIV_EXPR
- It controls how the quotient is rounded to a integer.
+ It controls how the quotient is rounded to an integer.
Return nonzero if the operation overflows.
UNS nonzero says do unsigned division. */
diff --git a/gcc/gcc.c b/gcc/gcc.c
index 321ec1d..d265fae 100644
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -5884,7 +5884,7 @@ main (argc, argv)
/* We do not exit here. Instead we have created a fake input file
called 'help-dummy' which needs to be compiled, and we pass this
- on the the various sub-processes, along with the --help switch. */
+ on the various sub-processes, along with the --help switch. */
}
if (verbose_flag)
diff --git a/gcc/gcov.c b/gcc/gcov.c
index db51a8b..dbafe81 100644
--- a/gcc/gcov.c
+++ b/gcc/gcov.c
@@ -477,7 +477,7 @@ init_arc (arcptr, source, target, bb_graph)
}
-/* Reverse the arcs on a arc list. */
+/* Reverse the arcs on an arc list. */
static struct adj_list *
reverse_arcs (arcptr)
diff --git a/gcc/gcse.c b/gcc/gcse.c
index 9a46854..f1d40e4 100644
--- a/gcc/gcse.c
+++ b/gcc/gcse.c
@@ -5424,7 +5424,7 @@ delete_null_pointer_checks (f)
/* LAST_INSN is a conditional jump. Get its condition. */
condition = get_condition (last_insn, &earliest);
- /* If we were unable to get the condition, or it is not a equality
+ /* If we were unable to get the condition, or it is not an equality
comparison against zero then there's nothing we can do. */
if (!condition
|| (GET_CODE (condition) != NE && GET_CODE (condition) != EQ)
diff --git a/gcc/global.c b/gcc/global.c
index f811f22..31d264d 100644
--- a/gcc/global.c
+++ b/gcc/global.c
@@ -1212,7 +1212,7 @@ find_reg (num, losers, alt_regs_p, accept_call_clobbered, retrying)
{
/* We explicitly evaluate the divide results into temporary
variables so as to avoid excess precision problems that occur
- on a i386-unknown-sysv4.2 (unixware) host. */
+ on an i386-unknown-sysv4.2 (unixware) host. */
double tmp1 = ((double) local_reg_freq[regno]
/ local_reg_live_length[regno]);
diff --git a/gcc/ifcvt.c b/gcc/ifcvt.c
index fcbc645..da9c003 100644
--- a/gcc/ifcvt.c
+++ b/gcc/ifcvt.c
@@ -560,7 +560,7 @@ noce_emit_store_flag (if_info, x, reversep, normalize)
|| code == GEU || code == GTU), normalize);
}
-/* Emit instruction to move a rtx into STRICT_LOW_PART. */
+/* Emit instruction to move an rtx into STRICT_LOW_PART. */
static void
noce_emit_move_insn (x, y)
rtx x, y;
diff --git a/gcc/loop.c b/gcc/loop.c
index d38741a..ab90395 100644
--- a/gcc/loop.c
+++ b/gcc/loop.c
@@ -2725,7 +2725,7 @@ find_and_verify_loops (f, loops)
/* If no suitable BARRIER was found, create a suitable
one before TARGET. Since TARGET is a fall through
path, we'll need to insert an jump around our block
- and a add a BARRIER before TARGET.
+ and add a BARRIER before TARGET.
This creates an extra unconditional jump outside
the loop. However, the benefits of removing rarely
diff --git a/gcc/optabs.c b/gcc/optabs.c
index 5b47c13..2d5e68d 100644
--- a/gcc/optabs.c
+++ b/gcc/optabs.c
@@ -3220,7 +3220,7 @@ prepare_cmp_insn (px, py, pcomparison, size, pmode, punsignedp, align,
/* Before emitting an insn with code ICODE, make sure that X, which is going
to be used for operand OPNUM of the insn, is converted from mode MODE to
- WIDER_MODE (UNSIGNEDP determines whether it is a unsigned conversion), and
+ WIDER_MODE (UNSIGNEDP determines whether it is an unsigned conversion), and
that it is accepted by the operand predicate. Return the new value. */
rtx
diff --git a/gcc/protoize.c b/gcc/protoize.c
index 33388cf..de626f7 100644
--- a/gcc/protoize.c
+++ b/gcc/protoize.c
@@ -1135,7 +1135,7 @@ unexpand_if_needed (aux_info_line)
strcpy (copy_p, unexp_p->contracted);
copy_p += size;
- /* Assume the there will not be another replacement required
+ /* Assume that there will not be another replacement required
within the text just replaced. */
s += len;
diff --git a/gcc/regclass.c b/gcc/regclass.c
index 61119f3..140a207 100644
--- a/gcc/regclass.c
+++ b/gcc/regclass.c
@@ -1304,7 +1304,7 @@ regclass (f, nregs, dump)
for (class = (int) ALL_REGS - 1; class > 0; class--)
{
/* Ignore classes that are too small for this operand or
- invalid for a operand that was auto-incremented. */
+ invalid for an operand that was auto-incremented. */
if (!contains_reg_of_mode [class][PSEUDO_REGNO_MODE (i)]
#ifdef FORBIDDEN_INC_DEC_CLASSES
|| (in_inc_dec[i] && forbidden_inc_dec_class[class])
diff --git a/gcc/reorg.c b/gcc/reorg.c
index 986ef671..97a8354 100644
--- a/gcc/reorg.c
+++ b/gcc/reorg.c
@@ -3105,7 +3105,7 @@ relax_delay_slots (first)
if (target_label != JUMP_LABEL (insn))
reorg_redirect_jump (insn, target_label);
- /* See if this jump branches around a unconditional jump.
+ /* See if this jump branches around an unconditional jump.
If so, invert this jump and point it to the target of the
second jump. */
if (next && GET_CODE (next) == JUMP_INSN
diff --git a/gcc/rtl.h b/gcc/rtl.h
index 983036f..22f673e 100644
--- a/gcc/rtl.h
+++ b/gcc/rtl.h
@@ -615,7 +615,7 @@ extern const char * const reg_note_name[];
NOTE_INSN_BLOCK_BEG and NOTE_INSN_BLOCK_END notes. (We avoid lots of casts
between ints and pointers if we use a different macro for the block number.)
The NOTE_INSN_RANGE_{START,END} and NOTE_INSN_LIVE notes record their
- information as a rtx in the field. */
+ information as an rtx in the field. */
#define NOTE_SOURCE_FILE(INSN) XCSTR(INSN, 3, NOTE)
#define NOTE_BLOCK(INSN) XCTREE(INSN, 3, NOTE)
diff --git a/gcc/stmt.c b/gcc/stmt.c
index ddfbf24..631f689 100644
--- a/gcc/stmt.c
+++ b/gcc/stmt.c
@@ -2784,7 +2784,7 @@ expand_exit_loop_if_false (whichloop, cond)
if (whichloop == 0)
return 0;
/* In order to handle fixups, we actually create a conditional jump
- around a unconditional branch to exit the loop. If fixups are
+ around an unconditional branch to exit the loop. If fixups are
necessary, they go before the unconditional branch. */
do_jump (cond, NULL_RTX, label);
@@ -5308,7 +5308,7 @@ expand_end_case (orig_index)
}
/* For constant index expressions we need only
- issue a unconditional branch to the appropriate
+ issue an unconditional branch to the appropriate
target code. The job of removing any unreachable
code is left to the optimisation phase if the
"-O" option is specified. */
diff --git a/gcc/tree.h b/gcc/tree.h
index 56ed9ab..717b073 100644
--- a/gcc/tree.h
+++ b/gcc/tree.h
@@ -1070,7 +1070,7 @@ struct tree_block
If set in a SET_TYPE, indicates a bitstring type. */
#define TYPE_STRING_FLAG(NODE) (TYPE_CHECK (NODE)->type.string_flag)
-/* If non-NULL, this is a upper bound of the size (in bytes) of an
+/* If non-NULL, this is an upper bound of the size (in bytes) of an
object of the given ARRAY_TYPE. This allows temporaries to be allocated. */
#define TYPE_ARRAY_MAX_SIZE(ARRAY_TYPE) TYPE_MAX_VALUE (ARRAY_TYPE)