-
Notifications
You must be signed in to change notification settings - Fork 18k
cmd/link: fail to build when using time/tzdata on ARM #44639
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
Fixed on tip already. |
@gopherbot please backport this to Go 1.16. This causes programs fail to build without easy workaround. |
Backport issue(s) opened: #44640 (for 1.16). Remember to create the cherry-pick CL(s) as soon as the patch is submitted to master, according to https://golang.org/wiki/MinorReleases. |
Change https://golang.org/cl/296909 mentions this issue: |
@cherrymui Does this issue also exist in Go 1.15, or only 1.16? |
I'm not really sure. By the logic of the code it probably could happen, but I'm not sure if it could be triggered by simply using tzdata package (as of Go 1.16) or only with some contrived cases. |
Change https://golang.org/cl/298030 mentions this issue: |
@dmitshur I can reproduce with Go 1.15. Backport CL sent. |
…dent packages Currently, in the trampoline generation pass we expect packages are laid out in dependency order, so a cross-package jump always has a known target address so we can check if a trampoline is needed. With linknames, there can be cycles in the package dependency graph, making this algorithm no longer work. For them, as the target address is unkown we conservatively generate a trampoline. This may generate unnecessary trampolines (if the packages turn out laid together), but package cycles are extremely rare so this is fine. Updates #44639. Fixes #44640. Change-Id: I2dc2998edacbda27d726fc79452313a21d07787a Reviewed-on: https://go-review.googlesource.com/c/go/+/292490 Trust: Cherry Zhang <[email protected]> Reviewed-by: Than McIntosh <[email protected]> (cherry picked from commit 098504c) Reviewed-on: https://go-review.googlesource.com/c/go/+/296909 Run-TryBot: Cherry Zhang <[email protected]> TryBot-Result: Go Bot <[email protected]>
…dent packages Currently, in the trampoline generation pass we expect packages are laid out in dependency order, so a cross-package jump always has a known target address so we can check if a trampoline is needed. With linknames, there can be cycles in the package dependency graph, making this algorithm no longer work. For them, as the target address is unkown we conservatively generate a trampoline. This may generate unnecessary trampolines (if the packages turn out laid together), but package cycles are extremely rare so this is fine. Updates #44639. Fixes #44748. Change-Id: I2dc2998edacbda27d726fc79452313a21d07787a Reviewed-on: https://go-review.googlesource.com/c/go/+/292490 Trust: Cherry Zhang <[email protected]> Reviewed-by: Than McIntosh <[email protected]> (cherry picked from commit 098504c) Reviewed-on: https://go-review.googlesource.com/c/go/+/298030 Run-TryBot: Cherry Zhang <[email protected]> TryBot-Result: Go Bot <[email protected]>
Branch out from #44073 (comment)
This is fixed in CL https://golang.org/cl/292490 , but that didn't get into Go 1.16 release. Filing a separate issue so we can make a backport.
The text was updated successfully, but these errors were encountered: