gcc: Avoid out-of-scope access of newv.

* Cherry-picked regression fix from gcc 4.6 mainline
* Simple 2 line change.
* GCC 4.7+ compiling gcc 4.6 would fail
* GCC bug 51969
* Fix was added to gcc 4.6-mainline via rev 184239
* Resolves #8470
This commit is contained in:
Alexander von Gluck IV 2012-04-14 12:12:58 -05:00
parent cc75156e51
commit 2dc19755cc

View File

@ -3594,14 +3594,13 @@ write_field_root (outf_p f, pair_p v, type_p type, const char *name,
int has_length, struct fileloc *line, const char *if_marked,
bool emit_pch, type_p field_type, const char *field_name)
{
struct pair newv;
/* If the field reference is relative to V, rather than to some
subcomponent of V, we can mark any subarrays with a single stride.
We're effectively treating the field as a global variable in its
own right. */
if (v && type == v->type)
{
struct pair newv;
newv = *v;
newv.type = field_type;
newv.name = ACONCAT ((v->name, ".", field_name, NULL));