all: build/test using Go 1.27-rc1#5477
Conversation
|
Size difference with the dev branch: Binary size differencedrivers/sizes-dev.txt has more commands than drivers/sizes-pr.txt
tinygo build -size short -o ./build/test.hex -target=feather-rp2040 ./examples/adafruit4650
flash ram
before after diff before after diff
|
|
Added another commit with support for the new |
|
It got further. I think perhaps the new set of errors might have to do with the SSA changes for generics we were just discussing @jakebailey @aykevl |
|
Added another commit that updates |
Signed-off-by: deadprogram <ron@hybridgroup.com>
Go 1.27 introduced the //go:linknamestd directive, a standard-library variant of //go:linkname that does not require importing "unsafe". The iter package switched to it for referencing runtime.newcoro and runtime.coroswitch, which caused "linker could not find symbol iter.newcoro / iter.coroswitch" errors when building with Go 1.27. Handle //go:linknamestd the same as //go:linkname, bypassing the unsafe import requirement, and add test coverage in the pragma compiler test. Signed-off-by: deadprogram <ron@hybridgroup.com>
Signed-off-by: deadprogram <ron@hybridgroup.com>
Go 1.27 adds generic methods (golang/go#77273). golang.org/x/tools go/ssa v0.42.0 does not instantiate them: objectMethod only applies receiverTypeArgs and ignores method-level type parameters, so a call such as (*math/rand/v2.Rand).N resolves to the abstract generic method and its body reaches createConst with a type-parameter-typed zero constant, triggering "panic: expected nil interface constant". Upgrade golang.org/x/tools to v0.47.0, whose go/ssa returns nil from MethodValue for generic methods and instantiates method-level type parameters. No compiler changes are required. Since x/tools v0.47.0 requires Go 1.25, raise the minimum supported Go version from 1.24 to 1.25. Signed-off-by: deadprogram <ron@hybridgroup.com>
|
For Windows, seems like you need the I think |
|
I think I actually have all of the other failures figured out, but, not sure what to do with the fixes. One or two of them I can send to |
This PR is to build/test using Go 1.27-rc1