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

Backport "Fix incorrect caching with dependent method parameters" to LTS #13

Merged
merged 1 commit into from
Dec 6, 2024

Conversation

WojciechMazur
Copy link

Backports scala#21699 to the 3.3.5.

PR submitted by the release tooling.
[skip ci]

The added test case used to fail Ycheck:typer with the seemingly identicals:

    Found:    (a: (aa : A{type B = Int}), b: a.B): CCPoly[(aa : A{type B = Int})]
    Required: (a: (aa : A{type B = Int}), b: a.B): CCPoly[(aa : A{type B = Int})]

In fact one of the `aa` is a a TypeVar instantiated to `A {type B = Int }`. The
MethodType comparison failed the signature check because the `a.B` where `a` is
backed by a type variable had a stale signature cached.

Fixed by changing `isProvisional` to traverse ParamRefs.

[Cherry-picked c32e535][modified]
Base automatically changed from backport-lts-3.3-21691 to lts-3.3 December 6, 2024 15:15
@WojciechMazur
Copy link
Author

No regressions detected in the community build up to backport-lts-3.3-22148.

Reference

@WojciechMazur WojciechMazur merged commit 59de925 into lts-3.3 Dec 6, 2024
18 of 19 checks passed
@WojciechMazur WojciechMazur deleted the backport-lts-3.3-21699 branch December 6, 2024 15:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant