gc: distinguish fatal compiler bug from error+exit
R=ken2
CC=golang-dev
https://golang.org/cl/902044
diff --git a/src/cmd/gc/typecheck.c b/src/cmd/gc/typecheck.c
index 65c2384..8c8646e 100644
--- a/src/cmd/gc/typecheck.c
+++ b/src/cmd/gc/typecheck.c
@@ -1709,7 +1709,7 @@
prefix = " in ";
else
desc = "";
- yyerror("implicit assignment of %T field '%s'%s%s", t, s->name, prefix, desc);
+ yyerror("implicit assignment of unexported field '%s' of %T%s%s", s->name, t, prefix, desc);
goto no;
}
if(!exportassignok(f->type, desc))
@@ -1935,7 +1935,7 @@
}
s = f->sym;
if(s != nil && !exportname(s->name) && s->pkg != localpkg)
- yyerror("implicit assignment of %T field '%s' in struct literal", t, s->name);
+ yyerror("implicit assignment of unexported field '%s' in %T literal", s->name, t);
ll->n = typecheckconv(nil, ll->n, f->type, 0, "field value");
ll->n = nod(OKEY, newname(f->sym), ll->n);
ll->n->left->typecheck = 1;