aboutsummaryrefslogtreecommitdiff
path: root/src/cmd
diff options
context:
space:
mode:
authorRuss Cox <rsc@golang.org>2014-09-16 10:21:54 -0400
committerRuss Cox <rsc@golang.org>2014-09-16 10:21:54 -0400
commit8d61334dd5b08c8076e343aa33197bd219cdf922 (patch)
treefe80e8f7eedbd8102ff9dee5bb126db8494662db /src/cmd
parent3d2321f639452afbccc2249153c16abec2a6607f (diff)
downloadgo-8d61334dd5b08c8076e343aa33197bd219cdf922.tar.xz
cmd/gc: say 'non-constant array bound' instead of 'invalid array bound'
Fixes #8196. LGTM=adonovan R=adonovan CC=golang-codereviews https://golang.org/cl/141510044
Diffstat (limited to 'src/cmd')
-rw-r--r--src/cmd/gc/typecheck.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/cmd/gc/typecheck.c b/src/cmd/gc/typecheck.c
index 746feb4d1b..18d20cdd16 100644
--- a/src/cmd/gc/typecheck.c
+++ b/src/cmd/gc/typecheck.c
@@ -408,7 +408,10 @@ reswitch:
v = toint(l->val);
break;
default:
- yyerror("invalid array bound %N", l);
+ if(l->type != T && isint[l->type->etype] && l->op != OLITERAL)
+ yyerror("non-constant array bound %N", l);
+ else
+ yyerror("invalid array bound %N", l);
goto error;
}
t->bound = mpgetfix(v.u.xval);