]>
gcc.gnu.org Git - gcc.git/commit - gcc/cp/except.c
except.c (push_eh_info): Pass the number of fields - 1 down, not the exact number of fields.
* except.c (push_eh_info): Pass the number of fields - 1 down, not
the exact number of fields.
cuz in finish_builtin_type, its comment sez
LEN is the number of elements
in FIELDS minus one, or put another way, it is the maximum subscript
used in FIELDS.
and its code does
for (i = 0; i < len; i++)
{
layout_type (TREE_TYPE (fields[i]));
DECL_FIELD_CONTEXT (fields[i]) = type;
TREE_CHAIN (fields[i]) = fields[i+1];
}
DECL_FIELD_CONTEXT (fields[i]) = type;
DECL_CLASS_CONTEXT (fields[i]) = type;
thus expecting the final ones to be fields[4], not fields[5] (which is
the actual size from 0, not the last field member)
From-SVN: r16257
This page took 0.074895 seconds and 5 git commands to generate.