Generalise (most) impls on Box - #161946
Conversation
|
also should do a perf run since monomorphisation. @bors try @rust-timer queue |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
Generalise (most) impls on `Box`
|
r=me pending crater + perf |
This comment has been minimized.
This comment has been minimized.
|
@craterbot check |
|
👌 Experiment ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more |
|
Finished benchmarking commit (0c3b2c2): comparison URL. Overall result: ❌✅ regressions and improvements - no action neededBenchmarking means the PR may be perf-sensitive. Consider adding rollup=never if this change is not fit for rolling up. @rustbot label: -S-waiting-on-perf -perf-regression Instruction countOur most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.
Max RSS (memory usage)Results (primary 3.2%, secondary -0.3%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesResults (primary 2.7%, secondary -11.8%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Binary sizeThis perf run didn't have relevant results for this metric. Bootstrap: 475.673s -> 475.454s (-0.05%) |
|
that's a nothingburger, nice. time to just wait a zillion years for crater lol |
|
Is there a reason And how is changing the |
|
I'm think this is the issue Nia's referring to: the cc https://faultlore.com/blah/defaults-affect-inference/ which discusses the same issue for why |
Inference basically. It becomes ambiguous in allocator what a default box might mean, or a box converted from another type. |
|
@craterbot cancel See #162233 |
|
🗑️ Experiment ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more |
|
👌 Experiment ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more |
|
looked at the regression list on the rollup and i think this pr was entirely harmless? if so yay |
|
🚧 Experiment ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more |
|
🎉 Experiment
Footnotes
|
|
Needs rebase for stable API timestamp (and thus has to be rollup=never) but otherwise good |
|
Side note: confused myself into thinking this needed FCP but that's included as part of the allocator FCP |
|
yeah this is not gonna need rebase dw. per the above, @bors r=clarfonthey |
|
Right, I guess this doesn't add new stable API. |
Rollup of 8 pull requests Successful merges: - #162412 (Fix msvc-specific differences in debuginfo tests) - #160651 (mir: validate `Move` call arguments are locals or box derefs) - #161946 (Generalise (most) impls on `Box`) - #162192 (normalize CoerceShared field types before relating) - #160518 (fix: fix no resolution for self import in namespaced crates) - #162509 (Avoid suggesting gated generic arguments for Fn-family traits) - #162521 (Don't explicitly specify `OnDuplicate::Error` as it is the default) - #162526 (yeet VisitorExt)
Rollup of 8 pull requests Successful merges: - #162412 (Fix msvc-specific differences in debuginfo tests) - #160651 (mir: validate `Move` call arguments are locals or box derefs) - #161946 (Generalise (most) impls on `Box`) - #162192 (normalize CoerceShared field types before relating) - #160518 (fix: fix no resolution for self import in namespaced crates) - #162509 (Avoid suggesting gated generic arguments for Fn-family traits) - #162521 (Don't explicitly specify `OnDuplicate::Error` as it is the default) - #162526 (yeet VisitorExt)
Rollup of 8 pull requests Successful merges: - #162412 (Fix msvc-specific differences in debuginfo tests) - #160651 (mir: validate `Move` call arguments are locals or box derefs) - #161946 (Generalise (most) impls on `Box`) - #162192 (normalize CoerceShared field types before relating) - #160518 (fix: fix no resolution for self import in namespaced crates) - #162509 (Avoid suggesting gated generic arguments for Fn-family traits) - #162521 (Don't explicitly specify `OnDuplicate::Error` as it is the default) - #162526 (yeet VisitorExt)
Rollup merge of #161946 - nia-e:more-box-impls, r=clarfonthey Generalise (most) impls on `Box` Resolves the trait impl concern for #156882; `Default` wasn't touched since changing that would be breaking, but hopefully all of this should be fine - I'll do a crater run to be sure. Certain impls that were for one reason or another Annoying to generalise (e.g. `Clone for Box<Path>`) were also untouched since I believe we can add those in the future, as they're on concrete types. r? clarfonthey
View all comments
Resolves the trait impl concern for #156882;
Defaultwasn't touched since changing that would be breaking, but hopefully all of this should be fine - I'll do a crater run to be sure. Certain impls that were for one reason or another Annoying to generalise (e.g.Clone for Box<Path>) were also untouched since I believe we can add those in the future, as they're on concrete types.r? clarfonthey