Skip to content

Backport "Fix stale symbol crashes in some path depended types in macro contexts" to LTS #19051

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

Merged
merged 2 commits into from
Dec 8, 2023

Conversation

Kordyjan
Copy link
Contributor

Backports #18077 to the LTS branch.

PR submitted by the release tooling.
[skip ci]

The reason for the stale symbols was the fact that they were derived
from the previous (suspended) run (by calling a method from that run),
and path depended types seem to use an optimized path utilizing initial
designator, unlike the other kinds of types, which seem to either not
need calculating denotation or the denotation there is able to update
it's own validity.

Since that is impossible to do for those path dependent types, if they
are invalid in the run recaluclate the Symbol, otherwise use
`currentSymbol` as before.

[Cherry-picked f3c2b1d]
To fix we recalculate the symbol from directly from NamedType when from
invalid run, instead of updating it's validity (which is impossible, as
its owners do not include it in their decls).

[Cherry-picked 576d448]
Base automatically changed from lts-18098 to release-3.3.2 December 8, 2023 15:18
@Kordyjan
Copy link
Contributor Author

Kordyjan commented Dec 8, 2023

No regressions detected in the community build up to lts-16941.

Reference

@Kordyjan Kordyjan merged commit 6ccc9fd into release-3.3.2 Dec 8, 2023
@Kordyjan Kordyjan deleted the lts-18077 branch December 8, 2023 15:18
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.

2 participants