Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
spec: clarify requirements for duplicate constants in interface-typed map literal keys and switches #28085
The Go spec disallows duplicate constants in map literal keys, and allows compilers to reject duplicate constants in switch cases.
However, the Go spec does not formally allow interface-typed constants, and doesn't mention how to handle constants that are implicitly or explicitly converted to interface type. The existing compilers handle these situations in differing ways:
cmd/compile rejects 1, 2, and 3.
go/types rejects 1 and 3.
gccgo (8.0) rejects none.