Repository navigation
core: Constify resumable_breakpoint and re-export it in std - #164608
Conversation
|
cc @rust-lang/miri
cc @bjorn3
Some changes occurred to the intrinsics. Make sure the CTFE / Miri interpreter cc @rust-lang/miri, @RalfJung, @oli-obk, @lcnr Any special-casing of Miri in the standard library requires review. cc @rust-lang/miri |
|
rustbot has assigned @Mark-Simulacrum. Use Why was this reviewer chosen?The reviewer was selected based on:
|
This comment has been minimized.
This comment has been minimized.
4256667 to
7caeaec
Compare
208fea3 to
4b08f8c
Compare
| /// Executes a breakpoint trap, for inspection by a debugger. | ||
| /// | ||
| /// This intrinsic does not have a stable counterpart. | ||
| /// The stabilized version of this intrinsic is [`core::arch::breakpoint`]. |
There was a problem hiding this comment.
| /// The stabilized version of this intrinsic is [`core::arch::breakpoint`]. | |
| /// The public version of this intrinsic is [`core::arch::breakpoint`]. |
It's not stable yet, so maybe something like this?
There was a problem hiding this comment.
We use "the stabilized version" for all the intrinsics, even what's not stable. Probably could be updated everywhere, but at least it's consistent and we don't need to update it when the wrapper stabilizes so there's not much motivation.
There was a problem hiding this comment.
In the past we have specifically avoided saying "stabilized version" when it was not in fact stable yet, and then had to update the docs during stabilization. I do not recall a case where we said "stabilized" when it wasn't stable yet, but maybe things were handled inconsistently across intrinsics.
So, it's definitely not consistent to say "stabilized" here.
That's why I think we should use a different term.
There was a problem hiding this comment.
I don't have a super strong opinion, but I think I lean towards public here too.
r=me either way.
There was a problem hiding this comment.
"stabilized" was used historically, but it looks like we've actually since stabilized most of the intrinsics that did that. Changed to public since we have a few examples.
This function is documented as allowed to continue, which is useful behavior during const eval. Split a new `resumable_breakpoint` intrinsic from `breakpoint` which has the behavior of continuing in Miri and CTFE.
4b08f8c to
d0e5a14
Compare
|
@bors r=Mark-Simulacrum |
…tes, r=Mark-Simulacrum core: Constify `resumable_breakpoint` and re-export it in `std` This function is documented as allowed to continue, which is useful behavior during const eval. Split a new `resumable_breakpoint` intrinsic from `breakpoint` which has the behavior of continuing in Miri and CTFE.
Rollup of 8 pull requests Successful merges: - #159540 (Enable statx on all Linux targets and short-circuit it for musl) - #164168 (Add tests for unsoundness involving alias liveness) - #164608 (core: Constify `resumable_breakpoint` and re-export it in `std`) - #164787 (cg_llvm: Use an invariant lifetime brand for LLVM contexts ) - #164966 (x86-64-linux-gnu seems to have working f128 now) - #153893 (Lex lifetimes as identifiers, recover from emoji and emit appropriate error) - #164895 (Disable recovery when attribute parser shouldn't emit) - #165004 (docs: Nitpick change in `HashMap`'s `.insert_entry()` doc example)
…tes, r=Mark-Simulacrum core: Constify `resumable_breakpoint` and re-export it in `std` This function is documented as allowed to continue, which is useful behavior during const eval. Split a new `resumable_breakpoint` intrinsic from `breakpoint` which has the behavior of continuing in Miri and CTFE.
Rollup of 8 pull requests Successful merges: - #164168 (Add tests for unsoundness involving alias liveness) - #164608 (core: Constify `resumable_breakpoint` and re-export it in `std`) - #164787 (cg_llvm: Use an invariant lifetime brand for LLVM contexts ) - #164851 (Add behavior tests for `Arc` and `Rc`) - #164966 (x86-64-linux-gnu seems to have working f128 now) - #153893 (Lex lifetimes as identifiers, recover from emoji and emit appropriate error) - #164895 (Disable recovery when attribute parser shouldn't emit) - #165004 (docs: Nitpick change in `HashMap`'s `.insert_entry()` doc example)
Rollup of 9 pull requests Successful merges: - #164168 (Add tests for unsoundness involving alias liveness) - #164608 (core: Constify `resumable_breakpoint` and re-export it in `std`) - #164787 (cg_llvm: Use an invariant lifetime brand for LLVM contexts ) - #164966 (x86-64-linux-gnu seems to have working f128 now) - #153893 (Lex lifetimes as identifiers, recover from emoji and emit appropriate error) - #164848 (Add `strict_` methods to `NonZero`) - #164895 (Disable recovery when attribute parser shouldn't emit) - #164963 (fd-views: enable test on Miri) - #165004 (docs: Nitpick change in `HashMap`'s `.insert_entry()` doc example)
Rollup of 9 pull requests Successful merges: - #164168 (Add tests for unsoundness involving alias liveness) - #164608 (core: Constify `resumable_breakpoint` and re-export it in `std`) - #164787 (cg_llvm: Use an invariant lifetime brand for LLVM contexts ) - #164966 (x86-64-linux-gnu seems to have working f128 now) - #153893 (Lex lifetimes as identifiers, recover from emoji and emit appropriate error) - #164848 (Add `strict_` methods to `NonZero`) - #164895 (Disable recovery when attribute parser shouldn't emit) - #164963 (fd-views: enable test on Miri) - #165004 (docs: Nitpick change in `HashMap`'s `.insert_entry()` doc example)
…tes, r=Mark-Simulacrum core: Constify `resumable_breakpoint` and re-export it in `std` This function is documented as allowed to continue, which is useful behavior during const eval. Split a new `resumable_breakpoint` intrinsic from `breakpoint` which has the behavior of continuing in Miri and CTFE.
Rollup of 9 pull requests Successful merges: - #164168 (Add tests for unsoundness involving alias liveness) - #164608 (core: Constify `resumable_breakpoint` and re-export it in `std`) - #164787 (cg_llvm: Use an invariant lifetime brand for LLVM contexts ) - #164966 (x86-64-linux-gnu seems to have working f128 now) - #153893 (Lex lifetimes as identifiers, recover from emoji and emit appropriate error) - #164848 (Add `strict_` methods to `NonZero`) - #164895 (Disable recovery when attribute parser shouldn't emit) - #164963 (fd-views: enable test on Miri) - #165004 (docs: Nitpick change in `HashMap`'s `.insert_entry()` doc example)
Rollup merge of #164608 - tgross35:resumable_breakpoint-updates, r=Mark-Simulacrum core: Constify `resumable_breakpoint` and re-export it in `std` This function is documented as allowed to continue, which is useful behavior during const eval. Split a new `resumable_breakpoint` intrinsic from `breakpoint` which has the behavior of continuing in Miri and CTFE.
This function is documented as allowed to continue, which is useful
behavior during const eval. Split a new
resumable_breakpointintrinsicfrom
breakpointwhich has the behavior of continuing in Miri and CTFE.cc @RalfJung