This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug bootstrap/51969] [4.7 regression] gcc 4.7 unable to build gcc 4.6
- From: "markus at trippelsdorf dot de" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Mon, 23 Jan 2012 18:21:14 +0000
- Subject: [Bug bootstrap/51969] [4.7 regression] gcc 4.7 unable to build gcc 4.6
- Auto-submitted: auto-generated
- References: <bug-51969-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51969
--- Comment #1 from Markus Trippelsdorf <markus at trippelsdorf dot de> 2012-01-23 18:21:14 UTC ---
The following patch (applied to 4.6) fixes the problem for me:
diff --git a/gcc/gengtype.c b/gcc/gengtype.c
index abf17f8..550d3bb 100644
--- a/gcc/gengtype.c
+++ b/gcc/gengtype.c
@@ -3594,13 +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;