| Age | Commit message (Collapse) | Author | Lines |
|
Keep more information about trait binding failures.
|
|
Rollup of 9 pull requests
Successful merges:
- #70789 (remove false positives of unused_braces)
- #70847 (ci: move /var/lib/docker to /mnt on GHA)
- #70850 (BTreeMap first last proposal tweaks)
- #70876 (Use a `SmallVec` for `Cache::predecessors`.)
- #70883 (Clean up E0507 explanation)
- #70892 (wf: refactor `compute_trait_ref`)
- #70914 (Corrects a typo in rustdoc documentation.)
- #70915 (Remove unnecessary TypeFlags::NOMINAL_FLAGS)
- #70927 (Clean up E0510 explanation)
Failed merges:
r? @ghost
|
|
Clean up E0510 explanation
r? @Dylan-DPC
|
|
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
|
|
Clean up E0507 explanation
r? @Dylan-DPC
|
|
Use a `SmallVec` for `Cache::predecessors`.
This is a very small win.
|
|
BTreeMap first last proposal tweaks
Clean-up and following up on a request in #62924.
Trying the reviewer of the original code #65637...
r? @scottmcm
|
|
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
|
|
Fixes rust-lang#70856
|
|
|
|
|
|
Rollup of 5 pull requests
Successful merges:
- #70201 (Small tweaks in ToOwned::clone_into)
- #70762 (Miri leak check: memory reachable through globals is not leaked)
- #70846 (Keep codegen units unmerged when building compiler builtins)
- #70854 (Use assoc int submodules)
- #70857 (Don't import integer and float modules, use assoc consts 2)
Failed merges:
r? @ghost
|
|
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
|
|
Use assoc int submodules
Bumping some submodules to the commits their masters currently point at. The main point of this is to get the associated integer/float constant documentation updates that were recently merged to them:
* https://github.com/rust-lang/nomicon/pull/207
* https://github.com/rust-lang/rust-by-example/pull/1327
* https://github.com/rust-lang/stdarch/pull/848
But for some, a few more changes slipped by that happened to be in the master branch of these submodules.
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`.
|
|
|
|
Speed up path searching with `find_library_crate`.
By doing prefix and suffix checking on a `String` copy of each relevant
`PathBuf`, rather than the `PathBuf` itself.
|
|
This is a very small win.
|
|
ty/walk: iterate `GenericArg`s instead of `Ty`s.
Before this PR, `Ty::walk` only iterated over `Ty`s, but that's becoming an increasing problem with `const` generics, as `ty::Const`s in `Substs` are missed by it.
By working with `GenericArg` instead, we can handle both `Ty`s and `ty::Const`s, but also `ty::Region`s, which used to require ad-hoc mechanisms such as `push_regions`.
I've also removed `TraitRef::input_types`, as it's both long obsolete, and easy to misuse.
|
|
Despite OS differences, they're all just `Vec<u8>` inside, so we can
just forward `clone_into` calls to that optimized implementation.
|
|
It can try to keep its allocation by converting the inner `Box` to
`Vec`, using `clone_into` on the bytes, then convert back to `Box`.
|
|
Rollup of 5 pull requests
Successful merges:
- #70612 (Add io::Write::write_all_vectored)
- #70690 (Clean up E0501 explanation)
- #70821 (expose suggestions::InferCtxtExt for clippy)
- #70839 (clean up E0506 explanation)
- #70859 (Move sanitize-inline-always test to sanitize directory)
Failed merges:
r? @ghost
|
|
By doing prefix and suffix checking on a `String` copy of each relevant
`PathBuf`, rather than the `PathBuf` itself.
|
|
It appears to codegen slightly more efficiently with `split_at` taking
two slices at once, rather than slicing across different calls.
|
|
|
|
|
|
Move sanitize-inline-always test to sanitize directory
|
|
clean up E0506 explanation
r? @Dylan-DPC
|
|
expose suggestions::InferCtxtExt for clippy
This is very useful to do good async/await diagnostic reporting, for example for https://github.com/rust-lang/rust-clippy/pull/5423.
|
|
Clean up E0501 explanation
r? @Dylan-DPC
|
|
Add io::Write::write_all_vectored
Similar to io::Write::write_all but uses io::Write::write_vectored
instead.
Updates #70436
/cc @cramertj @sfackler
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|