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

x/tools/internal/gcimporter: update iexport.go to support generics #48392

Closed
findleyr opened this issue Sep 14, 2021 · 2 comments
Closed

x/tools/internal/gcimporter: update iexport.go to support generics #48392

findleyr opened this issue Sep 14, 2021 · 2 comments
Labels
FrozenDueToAge NeedsFix The path to resolution is known, but the work has not been done. release-blocker Soon This needs to be done soon. (regressions, serious bugs, outages) Tools This label describes issues relating to any tools in the x/tools repository.
Milestone

Comments

@findleyr
Copy link
Contributor

CL 349949 updates x/tools/internal/gcimporter/iimport.go to support generics, by porting over changes from the standard library go/internal/gcimporter package. It will take longer to port iexport.go, as it must be translated from cmd/compile/internal/typecheck/iexport.go. In the meantime (~days, I expect), I think we should skip x/tools/go/internal/gcimporter.TestIExportData_stdlib on Go 1.18, in order to avoid failures on the x/tools Trybots on Go repo CLs that use generics.

This issue tracks that process (skipping the test, updating the exporter, and unskipping).

CC @griesemer @mdempsky @danscales @ianlancetaylor

@findleyr findleyr added NeedsFix The path to resolution is known, but the work has not been done. release-blocker Soon This needs to be done soon. (regressions, serious bugs, outages) labels Sep 14, 2021
@findleyr findleyr added this to the Go1.18 milestone Sep 14, 2021
@findleyr findleyr self-assigned this Sep 14, 2021
@gopherbot gopherbot added the Tools This label describes issues relating to any tools in the x/tools repository. label Sep 14, 2021
@gopherbot
Copy link

Change https://golang.org/cl/349954 mentions this issue: go/internal/gcimporter: skip TestIExportData_stdlib on go1.18

gopherbot pushed a commit to golang/tools that referenced this issue Sep 14, 2021
This test will fail on Go 1.18 once standard library changes are
introduced that use generics. Skip it until iexport.go has been updated
to support generics.

Updates golang/go#48392

Change-Id: I0f779689daaf2bc3127affff633c883ed9d7289b
Reviewed-on: https://go-review.googlesource.com/c/tools/+/349954
Trust: Robert Findley <rfindley@google.com>
Run-TryBot: Robert Findley <rfindley@google.com>
Reviewed-by: Robert Griesemer <gri@golang.org>
gopls-CI: kokoro <noreply+kokoro@google.com>
TryBot-Result: Go Bot <gobot@golang.org>
@gopherbot
Copy link

Change https://golang.org/cl/351029 mentions this issue: go/internal/gcimporter: add support for generics to iexport.go

CarlosRosuero pushed a commit to CarlosRosuero/typeparams that referenced this issue Jun 13, 2023
This CL adds support for the Go 1.18 export format to iexport.go. This
support is based on cmd/compile/internal/typecheck/iexport.go, though
with a different types API and adjusted to build at Go versions below
1.18.

Specifically, this CL adds support for both column details in positions,
and generic types and functions. Along the way, some minor adjustments
are made to aid in debugging and testing.

Notably, after this CL the export data version produced by
go/gcexportdata will depend on the Go version used to build.

As part of this change, TestIExportData_stdlib is unskipped for Go 1.18.

Fixes golang/go#48392

Change-Id: I1b218e0acd4864de5c7b89706192273bc7850ffa
Reviewed-on: https://go-review.googlesource.com/c/tools/+/351029
Trust: Robert Findley <rfindley@google.com>
Run-TryBot: Robert Findley <rfindley@google.com>
gopls-CI: kokoro <noreply+kokoro@google.com>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-by: Matthew Dempsky <mdempsky@google.com>
@golang golang locked and limited conversation to collaborators Jun 23, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
FrozenDueToAge NeedsFix The path to resolution is known, but the work has not been done. release-blocker Soon This needs to be done soon. (regressions, serious bugs, outages) Tools This label describes issues relating to any tools in the x/tools repository.
Projects
None yet
Development

No branches or pull requests

2 participants