Yep! Can confirm that setting GOTOOLCHAIN=local and changing the go directive in go.mod to 1.21 (without minor version) fixed the problem.
Thanks again Axel! :) Hein On Monday, August 21, 2023 at 10:54:15 PM UTC-7 Axel Wagner wrote: > (or change the `go` directive to `Go 1.21` (no minor version) apparently) > > On Tue, Aug 22, 2023 at 7:52 AM Axel Wagner <axel.wa...@googlemail.com> > wrote: > >> By coincidence, I was just reading https://go.dev/blog/toolchain and >> realized I put `GOTOOLCHAIN=local` into my ~/.confiig/go/env a while ago, >> so as to not have the Go tool transparently download different versions. If >> I remove that, I can indeed reproduce the behavior you are seeing. >> So, my recommendation for experimenting would be to run `go env -w >> GOTOOLCHAIN=local`. >> >> On Tue, Aug 22, 2023 at 12:51 AM Hein Meling <hein....@gmail.com> wrote: >> >>> Thanks Axel for your reply. That's interesting. I'm able to run your >>> example just fine. However, using a different go.mod file with the content >>> below (and a longer code example with iteration over a LevelDB thing... not >>> able to provide the code), I get: >>> >>> % gotip version >>> go version go1.21.0 darwin/arm64 >>> >>> % gotip run iter.go >>> # command-line-arguments >>> ./iter.go:48:25: cannot range over SnapshotHash(ldb, nonce) (value of >>> type Seq2[uint64, error]) >>> >>> module iter >>> >>> go 1.21.0 >>> >>> require ( >>> github.com/opencoff/go-fasthash v0.0.0-20180406145558-aed761496075 >>> github.com/syndtr/goleveldb v1.0.0 >>> ) >>> >>> require ( >>> github.com/golang/snappy v0.0.0-20180518054509-2e65f85255db // indirect >>> golang.org/x/net v0.10.0 // indirect >>> golang.org/x/sys v0.11.0 // indirect >>> golang.org/x/text v0.12.0 // indirect >>> ) >>> >>> >>> On Sunday, August 20, 2023 at 10:59:20 PM UTC-7 Axel Wagner wrote: >>> >>>> Hm. For me, it still enables the rangefunc experiment, even though >>>> go.mod says go 1.21: >>>> >>>> mero@vetinari ~/tmp/x$ gotip version >>>> go version devel go1.21-ca691a8566d Tue Jul 18 10:30:20 2023 -0400 (w/ >>>> rangefunc) linux/amd64 >>>> mero@vetinari ~/tmp/x$ cat go.mod >>>> module x >>>> >>>> go 1.21 >>>> mero@vetinari ~/tmp/x$ cat x.go >>>> package main >>>> >>>> import "fmt" >>>> >>>> func main() { >>>> s := []int{1, 2, 3} >>>> for v := range All(s) { >>>> fmt.Println(v) >>>> } >>>> } >>>> >>>> func All[T any](s []T) func(yield func(T) bool) bool { >>>> return func(yield func(T) bool) bool { >>>> for _, v := range s { >>>> if !yield(v) { >>>> return false >>>> } >>>> } >>>> return true >>>> } >>>> } >>>> mero@vetinari ~/tmp/x$ gotip run x.go >>>> 1 >>>> 2 >>>> 3 >>>> >>>> On Fri, Aug 18, 2023 at 10:54 PM Hein Meling <hein....@gmail.com> >>>> wrote: >>>> >>>>> Hi all, >>>>> >>>>> I wanted to play around with the new range func CL >>>>> <https://github.com/golang/go/issues/61405>. >>>>> >>>>> Doing simple stuff works just fine, but if I need to import packages >>>>> to construct my custom iterator func, the go/gotip command insists on a >>>>> go.mod file, which effectively resets the go version to 1.21.0 (due to >>>>> go.mod), instead of the "(w/ rangefunc)" CL. >>>>> >>>>> Anyone know any workarounds for this? >>>>> >>>>> Thanks, >>>>> :) Hein >>>>> >>>>> -- >>>>> You received this message because you are subscribed to the Google >>>>> Groups "golang-nuts" group. >>>>> To unsubscribe from this group and stop receiving emails from it, send >>>>> an email to golang-nuts...@googlegroups.com. >>>>> To view this discussion on the web visit >>>>> https://groups.google.com/d/msgid/golang-nuts/f01ff376-b789-4d8a-89f5-165a6527325fn%40googlegroups.com >>>>> >>>>> <https://groups.google.com/d/msgid/golang-nuts/f01ff376-b789-4d8a-89f5-165a6527325fn%40googlegroups.com?utm_medium=email&utm_source=footer> >>>>> . >>>>> >>>> -- >>> You received this message because you are subscribed to the Google >>> Groups "golang-nuts" group. >>> To unsubscribe from this group and stop receiving emails from it, send >>> an email to golang-nuts...@googlegroups.com. >>> To view this discussion on the web visit >>> https://groups.google.com/d/msgid/golang-nuts/09e1c142-0532-4d05-8dbe-6114fefdc2fdn%40googlegroups.com >>> >>> <https://groups.google.com/d/msgid/golang-nuts/09e1c142-0532-4d05-8dbe-6114fefdc2fdn%40googlegroups.com?utm_medium=email&utm_source=footer> >>> . >>> >> -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/golang-nuts/953b47ac-3a64-4694-be10-1f2d3c734751n%40googlegroups.com.