Commit 9a3bc51c authored by Shenghou Ma's avatar Shenghou Ma

test/fixedbugs/bug454.go: add a test for CL 6564052

   Also mention that ignoring second blank identifier of range is required by the spec in the code.

   Fixes #4173.

R=daniel.morsing, remyoudompheng, r
CC=golang-dev
https://golang.org/cl/6594043
parent 2fee6e37
......@@ -71,7 +71,11 @@ typecheckrange(Node *n)
v2 = N;
if(n->list->next)
v2 = n->list->next->n;
// this is not only a optimization but also a requirement in the spec.
// "if the second iteration variable is the blank identifier, the range
// clause is equivalent to the same clause with only the first variable
// present."
if(isblank(v2)) {
n->list = list1(v1);
v2 = N;
......
// run
// Copyright 2012 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
// Issue 4173
package main
func main() {
var arr *[10]int
s := 0
for i, _ := range arr {
// used to panic trying to access arr[i]
s += i
}
if s != 45 {
println("BUG")
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment