summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIan Lance Taylor <iant@golang.org>2010-01-15 13:51:57 -0800
committerIan Lance Taylor <iant@golang.org>2010-01-15 13:51:57 -0800
commit9949102d3cd95c351a54d747b890709df252bf1f (patch)
tree2ab34c02a0646cf00009ff15f4058c2032303ec6
parent82b5112a0763ce69c9bf9b44672de4ef1a7a7203 (diff)
downloadgolang-9949102d3cd95c351a54d747b890709df252bf1f.tar.gz
Don't check array bounds if we have been told not to.
Fixes range.go test for 6g. R=rsc CC=golang-dev http://codereview.appspot.com/189093
-rw-r--r--src/cmd/5g/cgen.c2
-rw-r--r--src/cmd/6g/cgen.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/src/cmd/5g/cgen.c b/src/cmd/5g/cgen.c
index dea94dc08..48d5e3c22 100644
--- a/src/cmd/5g/cgen.c
+++ b/src/cmd/5g/cgen.c
@@ -571,7 +571,7 @@ agen(Node *n, Node *res)
n1.xoffset = Array_array;
gmove(&n1, &n3);
} else
- if(!debug['B']) {
+ if(!debug['B'] && !n->etype) {
if(v < 0)
yyerror("out of bounds on array");
else
diff --git a/src/cmd/6g/cgen.c b/src/cmd/6g/cgen.c
index 1e7c6e442..483c093c8 100644
--- a/src/cmd/6g/cgen.c
+++ b/src/cmd/6g/cgen.c
@@ -522,7 +522,7 @@ agen(Node *n, Node *res)
n1.xoffset = Array_array;
gmove(&n1, &n3);
} else
- if(!debug['B']) {
+ if(!debug['B'] && !n->etype) {
if(v < 0)
yyerror("out of bounds on array");
else