-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Lint avoids revisiting Inlined.call #24277
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
Conversation
|
Would be nice to craft a test. One of the i15503 tests reports that it skips one tree.
where the counts are skipped call trees and the total (unique) call trees. The debug message was emitted at reporting, i.e., after inlining, for various incremental runs. The first number is obviously significant. I did not investigate which trees are inlined many times. Note that Without the fix, the build runs more than ten minutes, possibly much more than the limit of my patience. |
|
The comment notes that these checks were tried in previous versions of the lint, but the glass of my knowledge about inlining is still only half full. Probably it was just wrong. Linting inlined code was removed in March for 3.7.0. (The wrong code was partially reverted and corrected at 0b3e859. I don't see a commit that tries to avoid visiting a call twice, but my vague memory is that I thought it was not effective. Obviously I lacked an effective test.) |
tgodzik
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
Backports #24277 to the 3.7.4. PR submitted by the release tooling. [skip ci]
Fixes scala#24266 Restores empty check and "already seen" check for Inlined.call sites. [Cherry-picked b14afef]
Fixes scala#24266 Restores empty check and "already seen" check for Inlined.call sites. [Cherry-picked b14afef]
Fixes #24266
Restores empty check and "already seen" check for Inlined.call sites.