Skip to content
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

cmd/link: fail to build when using time/tzdata on ARM [1.16 backport] #44640

Closed
gopherbot opened this issue Feb 26, 2021 · 6 comments
Closed
Labels
CherryPickApproved Used during the release process for point releases FrozenDueToAge
Milestone

Comments

@gopherbot
Copy link

gopherbot commented Feb 26, 2021

@cherrymui requested issue #44639 (fixed in 098504c for Go 1.17) to be considered for backport to the next 1.16 minor release.

@gopherbot please backport this to Go 1.16. This causes programs fail to build without easy workaround.

@gopherbot gopherbot added the CherryPickCandidate Used during the release process for point releases label Feb 26, 2021
@gopherbot gopherbot added this to the Go1.16.1 milestone Feb 26, 2021
@gopherbot
Copy link
Author

Change https://golang.org/cl/296909 mentions this issue: [release-branch.go1.16] cmd/link: generate trampoline for inter-dependent packages

@gopherbot

This comment has been minimized.

@toothrot toothrot modified the milestones: Go1.16.1, Go1.16.2 Mar 10, 2021
@cagedmantis cagedmantis modified the milestones: Go1.16.2, Go1.16.3 Mar 11, 2021
@toothrot
Copy link
Contributor

Approved. This is a serious issue with no workaround.

@toothrot toothrot added the CherryPickApproved Used during the release process for point releases label Mar 18, 2021
@gopherbot gopherbot removed the CherryPickCandidate Used during the release process for point releases label Mar 18, 2021
@gopherbot
Copy link
Author

Closed by merging 9c7463c to release-branch.go1.16.

gopherbot pushed a commit that referenced this issue Mar 25, 2021
…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 <cherryyz@google.com>
Reviewed-by: Than McIntosh <thanm@google.com>
(cherry picked from commit 098504c)
Reviewed-on: https://go-review.googlesource.com/c/go/+/296909
Run-TryBot: Cherry Zhang <cherryyz@google.com>
TryBot-Result: Go Bot <gobot@golang.org>
@s8mathur
Copy link

s8mathur commented Apr 3, 2021

Boggles my mind that the mighty Google can't write tests for, and use standard CI/test dashboards to prevent such bloopers from shipping to production releases. Happens routinely with Go - easily unit-testable features breaking in the wild, then a flurry of backports and minor point releases to patch.

@ianlancetaylor
Copy link
Contributor

@s8mathur We have fairly extensive testing and dashboards. See https://build.golang.org/. But we are not perfect. Go was started at "the mighty Google," but it is an open source project, and we always welcome help making it better. Thanks.

@golang golang locked and limited conversation to collaborators Apr 3, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
CherryPickApproved Used during the release process for point releases FrozenDueToAge
Projects
None yet
Development

No branches or pull requests

5 participants