Conversation
…=thomcc Run most `core::num` tests in const context too This adds some infrastructure for something I was going to use in rust-lang#131566, but it felt worthwhile enough on its own to merge/discuss separately. Essentially, right now we tend to rely on UI tests to ensure that things work in const context, rather than just using library tests. This uses a few simple macro tricks to make it *relatively* painless to execute tests in both runtime and compile-time context. And this only applies to the numeric tests, and not anything else. Recommended to review without whitespace in the diff. cc `@RalfJung`
…=compiler-errors abi/compatibility: also test Option-like types Adds tests for the decision [here](rust-lang#130628 (comment)). Cc ``@workingjubilee``
…compiler-errors analyse: remove unused uncanonicalized field This field is unused and was only relevant when actually printing proof trees. Right now this simply causes proof tree building to leak a bunch of inference vars 😁 r? ``@compiler-errors``
Optimize `Rc<T>::default` The missing piece of rust-lang#131460. Also refactored `Arc<T>::default` by using a safe `NonNull::from(Box::leak(_))` to replace the unnecessarily unsafe call to `NonNull::new_unchecked(Box::into_raw(_))`. The remaining unsafety is coming from `[Rc|Arc]::from_inner`, which is safe from the construction of `[Rc|Arc]Inner`.
relnotes: fix stabilizations of `assume_init` Ref: rust-lang/blog.rust-lang.org#1416
|
@bors r+ rollup=never p=5 |
|
☀️ Test successful - checks-actions |
|
📌 Perf builds for each rolled up PR:
previous master: e1f3068995 In the case of a perf regression, run the following command for each PR you suspect might be the cause: |
|
Finished benchmarking commit (9abfcb4): comparison URL. Overall result: ❌✅ regressions and improvements - please read the text belowOur benchmarks found a performance regression caused by this PR. Next Steps:
@rustbot label: +perf-regression Instruction countThis is the most reliable metric that we have; it was used to determine the overall result at the top of this comment. However, even this metric can sometimes exhibit noise.
Max RSS (memory usage)Results (primary -2.2%, secondary -2.3%)This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.
CyclesResults (primary 1.3%, secondary -3.1%)This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.
Binary sizeResults (primary 0.2%)This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.
Bootstrap: 781.732s -> 782.378s (0.08%) |
|
This actually looks like a genuine small regression across the board: Might have been caused by LLVM doing more work because of #132031? 🤔 Started a perf. run. |

Successful merges:
core::numtests in const context too #131707 (Run mostcore::numtests in const context too)Rc<T>::default#132031 (OptimizeRc<T>::default)assume_init#132040 (relnotes: fix stabilizations ofassume_init)r? @ghost
@rustbot modify labels: rollup
Create a similar rollup