-
Notifications
You must be signed in to change notification settings - Fork 13.3k
Rollup of 6 pull requests #130649
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
Rollup of 6 pull requests #130649
Conversation
Fixes stack overflow in the case of recursive types
no functional changes should arise, just moves the lint impl details out of a very crowded file with lots of different lints in it.
A couple tests were using `BOOTSTRAP_CARGO` with `-Zbuild-std`, but that stage0 cargo might not always be in sync with in-tree changes. In particular, those tests started failing on the beta branch because the older cargo couldn't find the library `Cargo.lock`, and then couldn't build the latest version of `compiler_builtins` that had nightly changes.
no need for a weird macro when a self-explanatory `match` will do.
…ratrieb add guarantee about remove_dir and remove_file error kinds approved in ACP rust-lang/libs-team#433
…overflow, r=compiler-errors Add recursion limit to FFI safety lint Fixes rust-lang#130310 Now we check against `tcx.recursion_limit()` and raise an error if it the limit is reached instead of overflowing the stack.
Pass the current cargo to `run-make` tests A couple tests were using `BOOTSTRAP_CARGO` with `-Zbuild-std`, but that stage0 cargo might not always be in sync with in-tree changes. In particular, those tests started failing on the beta branch because the older cargo couldn't find the library `Cargo.lock`, and then couldn't build the latest version of `compiler_builtins` that had nightly changes. Fixes rust-lang#130634 r? `@saethlin`
… r=BoxyUwU Only expect valtree consts in codegen Turn a bunch of `Const::eval_*` calls into `Const::try_to_*` calls, which implicitly assert that we only have valtrees by the time we get to codegen. r? `@BoxyUwU`
…eback, r=BoxyUwU Normalize consts in writeback when GCE is enabled GCE lazily normalizes its unevaluated consts. This PR ensures that, like the new solver with its lazy norm types, we can assume that the writeback results are fully normalized. This is important since we're trying to eliminate unnecessary calls to `ty::Const::{eval,normalize}` since they won't work with mGCE. Previously, we'd keep those consts unnormalized in writeback all the way through MIR build, and they'd only get normalized if we explicitly called `ty::Const::{eval,normalize}`, or during codegen since that calls `normalize_erasing_regions` (which invokes the `QueryNormalizer`, which evaluates the const accordingly). This hack can (hopefully obviously) be removed when mGCE is implemented and we yeet the old GCE; it's only reachable with the GCE flag anyways, so I'm not worried about the implications here. r? `@BoxyUwU`
…-int-lint, r=compiler-errors compiler: factor out `OVERFLOWING_LITERALS` impl This puts it into `rustc_lint/src/types/literal.rs`. It then uses the fact that it's easier to navigate the logic to identify something that can easily be factored out, as an instance of "why".
@bors r+ rollup=never p=6 |
☀️ Test successful - checks-actions |
📌 Perf builds for each rolled up PR:
previous master: c0838c8ebe In the case of a perf regression, run the following command for each PR you suspect might be the cause: |
Finished benchmarking commit (74fd001): comparison URL. Overall result: ❌ regressions - ACTION NEEDEDNext Steps: If you can justify the regressions found in this perf run, please indicate this with @rustbot label: +perf-regression Instruction countThis is a highly reliable metric that was used to determine the overall result at the top of this comment.
Max RSS (memory usage)Results (primary 0.5%, secondary 0.6%)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 (secondary -6.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.
Binary sizeThis benchmark run did not return any relevant results for this metric. Bootstrap: 768.11s -> 769.225s (0.15%) |
@rustbot label: +perf-regression-triaged |
Successful merges:
run-make
tests #130642 (Pass the current cargo torun-make
tests)OVERFLOWING_LITERALS
impl #130646 (compiler: factor outOVERFLOWING_LITERALS
impl)r? @ghost
@rustbot modify labels: rollup
Create a similar rollup