]> Cypherpunks repositories - gostls13.git/commit
spec: clarify that each block has its own version of iota
authorgriesemer <gri@golang.org>
Wed, 18 Oct 2017 22:31:42 +0000 (15:31 -0700)
committerRobert Griesemer <gri@golang.org>
Thu, 19 Oct 2017 15:30:37 +0000 (15:30 +0000)
commit52dd39965e78260145091226490ee5510ea34ced
treec691500a91efa03eb24dc53f83935bbe8b9abd5f
parent58d7231b2f503f70955fb050f02ea8a0277db0fa
spec: clarify that each block has its own version of iota

Issue #15550 is clearly an esoteric case but the spec was silent
about it and we had diverging implementations. By making `iota`
and index that is relative to the respective constant declaration,
nested const declarations won't affect outer values of `iota`.

cmd/compile and go/types already follow this semantics.

Fixes #15550.

Change-Id: If138189e3ea4373f8ba50ac6fb1d219b481f8698
Reviewed-on: https://go-review.googlesource.com/71750
Reviewed-by: Rob Pike <r@golang.org>
Reviewed-by: Matthew Dempsky <mdempsky@google.com>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
doc/go_spec.html