-
Notifications
You must be signed in to change notification settings - Fork 17.9k
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/compile: compilation of Go 1.13 package fails when importing exported interface type with overlapping methods from Go 1.14 package #35437
Comments
CC @griesemer |
Relatedly, |
I think adding something like |
[edited] When compiling a Go 1.13 package, shouldn't we fail if we depend on a Go 1.14 feature via an import? This is a corner-case because it can be "made to work" - but in general it's quite possible that a new language feature (contracts!) exposed via exports cannot be consumed by a package compiled for an older language version. Summary: I agree with the argument in #6977 (comment): In this specific case, the combination of |
I'm not sure. We don't have much precedent for what it should do. For Go 1.9, we allowed a I'm thinking the Go spec* needs to introduced the concept of Go language version, and it needs to be explained how differing language versions across packages should work. (* I'd also be fine with a separate document, like how the memory model is separately defined.) |
Change https://golang.org/cl/205977 mentions this issue: |
At #6977 (comment), @bcmills says this should work:
The text was updated successfully, but these errors were encountered: