-
Notifications
You must be signed in to change notification settings - Fork 18k
go/types: inconsistent type checking results with recursive aliases on 1.22 and 1.23 #70230
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
If I understand the post correctly, it looks like the behavior on tip is correct, whereas 1.22 and 1.23 are wrong? So you're suggesting a backport? Thanks. |
We may not be able to easily backport a fix because we don't have the same infrastructure (Alias type nodes) enabled in 1.22/23. But this needs to be investigated first. |
Thanks. If this only affects recursive aliases like this, we probably don't need to backport. We need to decide whether tip if correct. |
@timothy-king Is there anything left to do here? |
Tip is correct. If we are not going to backport for 1.23 (#70230 (comment)), then there is nothing to do here. |
Opening a new issue for #50729 (comment) .
go/types is giving inconsistent errors with recursive aliases on this example https://go.dev/play/p/CO_3yd7yyrV :
On the 1.22 playground this fails with the error:
On the 1.23 playground, this fails with the error:
gotip succeeds and outputs:
On 1.22 and 1.23, commenting out
G(c A)
makes the vet warning go away. As does moving the declaration ofX
belowE
.cc @griesemer
The text was updated successfully, but these errors were encountered: