-
Notifications
You must be signed in to change notification settings - Fork 13.3k
Make sure we don't overrun the stack in canonicalizer #136592
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
Make sure we don't overrun the stack in canonicalizer #136592
Conversation
I guess we use this in stable now, so wouldn't hurt to test perf: @bors try @rust-timer queue |
This comment has been minimized.
This comment has been minimized.
…nical, r=<try> Make sure we don't overrun the stack in canonicalizer r? lcnr Addresses rust-lang/trait-system-refactor-initiative#160
☀️ Try build successful - checks-actions |
This comment has been minimized.
This comment has been minimized.
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.
r=me after perf
Finished benchmarking commit (ab6c13d): comparison URL. Overall result: no relevant changes - no action neededBenchmarking 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 may lead to changes in compiler perf. @bors rollup=never Instruction countThis benchmark run did not return any relevant results for this metric. Max RSS (memory usage)Results (primary -1.2%, secondary -0.5%)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.5%)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 sizeThis benchmark run did not return any relevant results for this metric. Bootstrap: 778.541s -> 776.797s (-0.22%) |
@bors r+ rollup=always |
@bors r- |
@@ -0,0 +1,84 @@ | |||
//@ check-pass | |||
//@ compile-flags: -Znext-solver |
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.
instead of adding a new test, please just add revisions to tests/ui/associated-consts/issue-93775.rs
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.
oh lol i didn't realize this was minimized from an existing test 👍
7ba1dc3
to
8e7481b
Compare
@bors r=lcnr |
…nonical, r=lcnr Make sure we don't overrun the stack in canonicalizer r? lcnr Addresses rust-lang/trait-system-refactor-initiative#160
…iaskrgr Rollup of 9 pull requests Successful merges: - rust-lang#135973 (fix tail call checks wrt `#[track_caller]`) - rust-lang#136191 (compiler: replace few consts arrays with statics to remove const dupes) - rust-lang#136565 (compiler: Clean up weird `rustc_abi` reexports) - rust-lang#136582 (Revert "CI: build FreeBSD artifacts on FreeBSD 13.4") - rust-lang#136592 (Make sure we don't overrun the stack in canonicalizer) - rust-lang#136627 (MIR validation: add comment explaining the limitations of CfgChecker) - rust-lang#136634 (Stabilise `Cursor::{get_mut, set_position}` in `const` scenarios.) - rust-lang#136643 (ping me for attribute-related changes) - rust-lang#136644 (Add `rustc_hir_pretty::item_to_string` function) r? `@ghost` `@rustbot` modify labels: rollup
failed on windows |
windows probably just needs a separate call to |
Oh, lol, no it's because of #134608. That PR essentially papered over another stack overrun. |
8e7481b
to
241a602
Compare
@bors r=lcnr |
…nonical, r=lcnr Make sure we don't overrun the stack in canonicalizer r? lcnr Addresses rust-lang/trait-system-refactor-initiative#160
…nonical, r=lcnr Make sure we don't overrun the stack in canonicalizer r? lcnr Addresses rust-lang/trait-system-refactor-initiative#160
…iaskrgr Rollup of 8 pull requests Successful merges: - rust-lang#136458 (Do not deduplicate list of associated types provided by dyn principal) - rust-lang#136474 ([`compiletest`-related cleanups 3/7] Make the distinction between sources root vs test suite sources root in compiletest less confusing) - rust-lang#136592 (Make sure we don't overrun the stack in canonicalizer) - rust-lang#136787 (Remove `lifetime_capture_rules_2024` feature) - rust-lang#137180 (Give `global_asm` a fake body to store typeck results, represent `sym fn` as a hir expr to fix `sym fn` operands with lifetimes) - rust-lang#137257 (Ignore fake borrows for packed field check) - rust-lang#137348 (More sophisticated span trimming for suggestions) - rust-lang#137399 (fix ICE in layout computation with unnormalizable const) r? `@ghost` `@rustbot` modify labels: rollup
…iaskrgr Rollup of 8 pull requests Successful merges: - rust-lang#136458 (Do not deduplicate list of associated types provided by dyn principal) - rust-lang#136474 ([`compiletest`-related cleanups 3/7] Make the distinction between sources root vs test suite sources root in compiletest less confusing) - rust-lang#136592 (Make sure we don't overrun the stack in canonicalizer) - rust-lang#136787 (Remove `lifetime_capture_rules_2024` feature) - rust-lang#137207 (Add #[track_caller] to Duration Div impl) - rust-lang#137245 (Tweak E0277 when predicate comes indirectly from ?) - rust-lang#137257 (Ignore fake borrows for packed field check) - rust-lang#137399 (fix ICE in layout computation with unnormalizable const) r? `@ghost` `@rustbot` modify labels: rollup
Rollup merge of rust-lang#136592 - compiler-errors:ensure-stack-in-canonical, r=lcnr Make sure we don't overrun the stack in canonicalizer r? lcnr Addresses rust-lang/trait-system-refactor-initiative#160
r? lcnr
Addresses rust-lang/trait-system-refactor-initiative#160