remove `KEEP_IN_LOCAL_TCX` flag
closes#70285
I did not rename `needs_infer` here as this complex enough as is.
Will probably open a followup for that.
r? @eddyb
Rollup of 7 pull requests
Successful merges:
- #70134 (add basic support of OsStrExt for HermitCore)
- #70565 (Add inline attributes for functions used in the query system)
- #70828 (rustdoc: Don't try to load source files from external crates)
- #70870 (Fix abuses of tykind::err)
- #70906 (Suggest move for closures and async blocks in more cases.)
- #70912 (Do not suggest adding type param when `use` is already suggested)
- #70930 (add tracking issue to `VecDeque::make_contiguous`)
Failed merges:
r? @ghost
rustdoc: Don't try to load source files from external crates
Local items defined in external macros shouldn't generate rendered source files and should link to the external crate's docs instead.
Part of #70757
r? @GuillaumeGomez
cc @eddyb
add basic support of OsStrExt for HermitCore
- this patch increases the compatibility to other operating systems
- in principle `ffi.rs` is derived from `src/libstd/sys/unix/ext/ffi.rs`
Remove unnecessary TypeFlags::NOMINAL_FLAGS
This was a relic from when we had "nominal flags" and "cached
properties." The latter no longer exists, so nominal flags are no
longer necessary. In fact, every flag is considered a nominal flag. I
went ahead and removed all references to NOMINAL_FLAGS.
Fixes rust-lang#70836
Corrects a typo in rustdoc documentation.
Fixes rust-lang#70856
Sorry, I am just learning git and I think I may have accidentally done some wacky stuff that closed my last PR. Here it is again.
wf: refactor `compute_trait_ref`
moves `extend_cause_with_original_assoc_item_obligation` out of `compute_trait_ref` and
changes `trait_assoc_items` to an iterator. This saves us from building an unnecessary `Vec<_>`
r? @eddyb i guess
ci: move /var/lib/docker to /mnt on GHA
There are some builders that are running out of disk space while building the Docker images, such as arm-android. This moves and symlinks `/var/lib/docker` to the `/mnt` partition on Linux GHA.
Example of a build failing because of this: https://github.com/rust-lang-ci/rust/runs/564628621
remove false positives of unused_braces
fixes#70717
We could potentially be more aggressive when linting let bindings by checking if there are any explicit `ref`s.
I have been unable to create a snippet which compiles when using braces but has a borrowck error
without them. The closes I've gotten is [the following (playground)](https://play.rust-lang.org/?version=stable&mode=debug&edition=2018&gist=4a1552ebe9648cb13fcb8dd969189a6c).
r? @eddyb
This was a relic from when we had "nominal flags" and "cached
properties." The latter no longer exists, so nominal flags are no
longer necessary. In fact, every flag is considered a nominal flag. I
went ahead and removed all references to NOMINAL_FLAGS.
Fixes rust-lang#70836
Don't import integer and float modules, use assoc consts 2
Follow up to #70777. I missed quite a lot of places. Partially because I wanted to keep the size of the last PR down, and partially because my regexes were not good enough :)
r? @dtolnay
Keep codegen units unmerged when building compiler builtins
Make it possible to control how mono items are partitioned into code generation
units, when compiling the compiler builtins, by retaining the original partitioning.
Helps with #48625, #61063, #67960, #70489.
r? @alexcrichton
Miri leak check: memory reachable through globals is not leaked
Also make Miri memory dump prettier by sharing more code with MIR dumping, and fix a bug where the Miri memory dump would print some allocations twice.
r? @oli-obk
Miri PR: https://github.com/rust-lang/miri/pull/1301
Small tweaks in ToOwned::clone_into
- `<[T]>::clone_into` is slightly more optimized.
- `CStr::clone_into` is new, letting it reuse its allocation.
- `OsStr::clone_into` now forwards to the underlying slice/`Vec`.