spec: document that duplicate types are invalid in type switches
Both compilers and also go/types don't permit duplicate types in type switches; i.e., this spec change is documenting a status quo that has existed for some time. Furthermore, duplicate nils are not accepted by gccgo or go/types; and more recently started causing a compiler error in gc. Permitting them is inconsistent with the existing status quo. Rather than making it an implementation restriction (as we have for expression switches), this is a hard requirement since it was enforced from the beginning (except for duplicate nils); it is also a well specified requirement that does not pose a significant burden for an implementation. Fixes #15896. Change-Id: If12db5bafa87598b323ea84418cb05421e657dd8 Reviewed-on: https://go-review.googlesource.com/23584Reviewed-by: Rob Pike <r@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
Showing
Please register or sign in to comment