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

Overhaul how contracts are lowered on fn-like bodies #136837

Merged
merged 1 commit into from
Feb 11, 2025

Conversation

compiler-errors
Copy link
Member

Consolidates all of the contracts lowering logic into lower_fn_body, rather than having it be split between lower_item_kind and lower_fn_body. This should fix #136683.

r? celinval

@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. labels Feb 10, 2025
@celinval
Copy link
Contributor

That's awesome. Thank you!

@bors r+ rollup

@bors
Copy link
Contributor

bors commented Feb 10, 2025

📌 Commit 4f18560 has been approved by celinval

It is now in the queue for this repository.

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Feb 10, 2025
jhpratt added a commit to jhpratt/rust that referenced this pull request Feb 11, 2025
…ering, r=celinval

Overhaul how contracts are lowered on fn-like bodies

Consolidates all of the contracts lowering logic into `lower_fn_body`, rather than having it be split between `lower_item_kind` and `lower_fn_body`. This should fix rust-lang#136683.

r? celinval
bors added a commit to rust-lang-ci/rust that referenced this pull request Feb 11, 2025
Rollup of 11 pull requests

Successful merges:

 - rust-lang#136606 (Fix long lines which rustfmt fails to format)
 - rust-lang#136663 (Stabilize `NonZero::count_ones`)
 - rust-lang#136672 (library: doc: core::alloc::Allocator: trivial typo fix)
 - rust-lang#136704 (Improve examples for file locking)
 - rust-lang#136721 (cg_llvm: Reduce visibility of some items outside the `llvm` module)
 - rust-lang#136813 (rustc_target: Add the fp16 target feature for AArch32)
 - rust-lang#136830 (fix i686-unknown-hurd-gnu x87 footnote)
 - rust-lang#136832 (Fix platform support table for i686-unknown-uefi)
 - rust-lang#136835 (Stop using span hack for contracts feature gating)
 - rust-lang#136837 (Overhaul how contracts are lowered on fn-like bodies)
 - rust-lang#136839 (fix ensure_monomorphic_enough)

r? `@ghost`
`@rustbot` modify labels: rollup
@bors bors merged commit 4ae214b into rust-lang:master Feb 11, 2025
12 checks passed
@rustbot rustbot added this to the 1.86.0 milestone Feb 11, 2025
rust-timer added a commit to rust-lang-ci/rust that referenced this pull request Feb 11, 2025
Rollup merge of rust-lang#136837 - compiler-errors:contracts-body-lowering, r=celinval

Overhaul how contracts are lowered on fn-like bodies

Consolidates all of the contracts lowering logic into `lower_fn_body`, rather than having it be split between `lower_item_kind` and `lower_fn_body`. This should fix rust-lang#136683.

r? celinval
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

ICE when trying to compile code with contracts: No HirId for DefId
5 participants