Robert Griesemer
Robert Griesemer
Follow-up: the type declaration in `$goroot/test/typeparam/issue50259.go` looks valid: ```Go var x T[B] type T[_ any] struct{} type A T[B] type B = T[A] ``` can be written as ```Go var...
I cannot reproduce this, neither at go1.22.3 nor at tip (haven't tried go1.22.2). In both cases, the build terminates. The offending for statement ([playground](https://go.dev/play/p/bf74ORmuVBa)) also works fine stand-alone. Can you...
Reopened for further investigation.
@mmp Excellent! Thanks for narrowing this down. Simplified repro: ```Go package p import "C" func _() { for range 10 { } } ``` I can reproduce this. Fix forthcoming...
@gopherbot please consider this for backport to 1.22 and 1.21.
Looks like this was already fixed in types2 with [CL 577616](https://go.dev/cl/577616) but not ported.
Not having looked at this in detail, from your description this sounds like a bug; at least I don't see why this would be intentional.
I think this is too significant a change of the type system for Go1 and there's no pressing need. I suggest we revisit this in the larger context of Go...
@rogpeppe In your proposal, ignoring optimization possibilities in the implementation and subtleties of zero values, the main benefit of using a sum type over a manually crafted interface type (containing...