-
Notifications
You must be signed in to change notification settings - Fork 12.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
Add basic checks for well-formedness of fn
/fn_mut
lang items
#86246
Conversation
(rust-highfive has picked a reviewer for you, use r? to override) |
☔ The latest upstream changes (presumably #87963) made this pull request unmergeable. Please resolve the merge conflicts. |
1714bcc
to
f19a74c
Compare
This comment has been minimized.
This comment has been minimized.
f19a74c
to
28585bf
Compare
Hey @pnkfelix! This came up during the compiler team triage meeting. If you have a chance, could you please review or if you don't have time, we can re-roll to get another reviewer. Thanks! |
@bors try @rust-timer queue @FabianWolff can you address the change for a more targeted message and rebase on top of a recent master? |
Awaiting bors try build completion. @rustbot label: +S-waiting-on-perf |
⌛ Trying commit 28585bf0f5b25e84500627bb38edfcaaebee3efd with merge 3777fcbdcee493db60907aa73da15ddf58397697... |
☀️ Try build successful - checks-actions |
Queued 3777fcbdcee493db60907aa73da15ddf58397697 with parent 15d9ba0, future comparison URL. |
Finished benchmarking commit (3777fcbdcee493db60907aa73da15ddf58397697): comparison url. Summary: This benchmark run did not return any relevant changes. If you disagree with this performance assessment, please file an issue in rust-lang/rustc-perf. Benchmarking this pull request likely means that it is perf-sensitive, so we're automatically marking it as not fit for rolling up. While you can manually mark this PR as fit for rollup, we strongly recommend not doing so since this PR led to changes in compiler perf. @bors rollup=never |
28585bf
to
effb780
Compare
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.
Left one last nitpick, but after that this is r=me.
effb780
to
cb6c139
Compare
@bors r+ |
📌 Commit cb6c139 has been approved by |
☀️ Test successful - checks-actions |
This pull request fixes #83471. Lang items are never actually checked for well-formedness (#9307). This means that one can get an ICE quite easily, e.g. as follows:
or this:
Ideally, there should probably be a more comprehensive strategy for checking lang items for well-formedness, but for the time being, I have added some rudimentary well-formedness checks that prevent #83471 and similar issues.