| Age | Commit message (Collapse) | Author | Lines |
|
|
|
|
|
Add suggestions for possible missing `fn`, `struct`, or `enum` keywords
Closes #125446
Closes #65381
|
|
Rollup of 7 pull requests
Successful merges:
- #126476 (Fix running bootstrap tests with a local Rust toolchain as the stage0)
- #127094 (E0191 suggestion correction, inserts turbofish)
- #127554 ( do not run test where it cannot run)
- #127564 (Temporarily remove me from review rotation.)
- #127568 (instantiate higher ranked goals in candidate selection again)
- #127569 (Fix local download of Docker caches from CI)
- #127570 ( small normalization improvement)
r? `@ghost`
`@rustbot` modify labels: rollup
|
|
small normalization improvement
r? `@compiler-errors`
|
|
Fix local download of Docker caches from CI
https://github.com/rust-lang/rust/pull/127312 broke local downloads of Docker caches from CI, when you wanted to build a Docker image locally. This PR fixes that.
r? `@nikic`
(Can you please check if the cache works for you with this PR?)
|
|
instantiate higher ranked goals in candidate selection again
This reverts #119820 as that PR has a significant impact and breaks code which *feels like it should work*. The impact ended up being larger than we expected during the FCP and we've ended up with some ideas for how we can work around this issue in the next solver. This has been discussed in the previous high bandwidth t-types meeting: https://rust-lang.zulipchat.com/#narrow/stream/326132-t-types.2Fmeetings/topic/2024-07-09.20high.20bandwidth.20meeting.
We'll therefore keep this inconsistency between the two solvers for now and will have to deal with it before stabilizating the use of the new solver outside of coherence: https://github.com/rust-lang/trait-system-refactor-initiative/issues/120.
fixes #125194 after a beta-backport.
The pattern which is more widely used than expected and feels like it should work, especially without deep knowledge of the type system is
```rust
trait Trait<'a> {}
impl<'a, T> Trait<'a> for T {}
fn trait_bound<T: for<'a> Trait<'a>>() {}
// A function with a where-bound which is more restrictive than the impl.
fn function1<T: Trait<'static>>() {
// stable: ok
// with #119820: error as we prefer the where-bound over the impl
// with this PR: back to ok
trait_bound::<T>();
}
```
r? `@rust-lang/types`
|
|
Temporarily remove me from review rotation.
|
|
r=pietroalbini
do not run test where it cannot run
This was seen on Ferrocene, where we have a custom test target that does not have unwind support
|
|
E0191 suggestion correction, inserts turbofish
closes #91997
|
|
Fix running bootstrap tests with a local Rust toolchain as the stage0
When configuring a local Rust toolchain as the stage0 (with `build.rustc` and `build.cargo` in `config.toml`) we noticed there were test failures (both on the Python and the Rust side) due to bootstrap not being able to find rustc and Cargo.
This was due to those two `config.toml` settings not being propagated in the tests. This PR fixes the issue by ensuring rustc and cargo are always configured in tests, using the parent bootstrap's `initial_rustc` and `initial_cargo`.
try-job: x86_64-msvc
Fixes https://github.com/rust-lang/rust/issues/105766
|
|
|
|
Sync rustc_codegen_gcc
Follow-up of https://github.com/rust-lang/rustc_codegen_gcc/pull/535.
cc `@antoyo`
|
|
|
|
reverts #119820
|
|
|
|
Exposing STARTUPINFOW.wShowWindow in CommandExt trait
Hi:
I needed a way to control how a new process's window is displayed in Windows (normal, minimized, maximized, etc).
I noticed that there is no direct way to do that (I even searched for crates doing this, but didn't find any).
Inspecting the standard library source code, I figured that it would be a good addition to CommandExt trait that allows some Windows specific customization to a Command.
This is my first time contributing to Rust, so please bear with me if I'm not following the rules :)
|
|
|
|
|
|
|
|
Migrate `extern-flag-pathless`, `silly-file-names`, `metadata-dep-info`, `cdylib-fewer-symbols` and `symbols-include-type-name` `run-make` tests to rmake
Part of #121876 and the associated [Google Summer of Code project](https://blog.rust-lang.org/2024/05/01/gsoc-2024-selected-projects.html).
`cdylib-fewer-symbols` demands a Windows try-job. (Almost guaranteed to fail, but 7 years is a long time)
try-job: x86_64-gnu-distcheck
try-job: x86_64-msvc
try-job: aarch64-apple
|
|
|
|
Rollup of 8 pull requests
Successful merges:
- #124211 (Bump `elided_lifetimes_in_associated_constant` to deny)
- #125627 (migration lint for `expr2024` for the edition 2024)
- #127091 (impl FusedIterator and a size hint for the error sources iter)
- #127461 (Fixup failing fuchsia tests)
- #127484 (`#[doc(alias)]`'s doc: say that ASCII spaces are allowed)
- #127508 (small search graph refactor)
- #127521 (Remove spastorino from SMIR)
- #127532 (documentation: update cmake version)
r? `@ghost`
`@rustbot` modify labels: rollup
|
|
documentation: update cmake version
Previously discussed here: https://github.com/rust-lang/rust/issues/127531
|
|
Remove spastorino from SMIR
r? ```@oli-obk```
|
|
small search graph refactor
small improvements which shouldn't impact behavior.
r? ``````@compiler-errors``````
|
|
`#[doc(alias)]`'s doc: say that ASCII spaces are allowed
PR #77570 allowed ASCII spaces in doc aliases, but the documentation wasn't updated to say so.
The code checking the aliases:
https://github.com/rust-lang/rust/blob/7fdefb804ec300fb605039522a7c0dfc9e7dc366/compiler/rustc_passes/src/check_attr.rs#L693-L704
``````@rustbot`````` label +A-docs
|
|
Fixup failing fuchsia tests
The Fuchsia platform passes all tests with these changes. Two tests are ignored because they rely on Fuchsia not returning a status code upon a process aborting. See #102032 and #58590 for more details on that topic.
Many formatting changes are also included in this PR.
r? tmandry
r? erickt
|
|
impl FusedIterator and a size hint for the error sources iter
cc tracking issue #58520
|
|
r=compiler-errors,eholk
migration lint for `expr2024` for the edition 2024
This is adding a migration lint for the current (in the 2021 edition and previous)
to move expr to expr_2021 from expr
Issue https://github.com/rust-lang/rust/issues/123742
I created also a repository to test out the migration https://github.com/vincenzopalazzo/expr2024-cargo-fix-migration
Co-Developed-by: ``@eholk``
|
|
compiler-errors:bump-elided_lifetimes_in_associated_constant, r=BoxyUwU
Bump `elided_lifetimes_in_associated_constant` to deny
It's been 5 versions since this was last bumped. Let's bump it up again.
|
|
Update `f16`/`f128` FIXMEs that needed `(NEG_)INFINITY`
Just a small fix to the pattern matching tests now that we can. Also contains a small unrelated comment tweak.
|
|
|
|
|
|
control how a new process should display its window (normal, minimized, maximized, etc)
|
|
More trait error reworking
More work on #127492, specifically those sub-bullets under "Move trait error reporting to `error_reporting::traits`". Stacked on top of #127493.
This does introduce new `TypeErrCtxt.*Ext` traits, but those will be deleted soon. Splitting this work into bite-sized pieces is the only way that it's gonna be feasible to both author and review ❤️
r? lcnr
|
|
|
|
Automatically taint when reporting errors from ItemCtxt
This isn't very robust yet, as you need to use `itemctxt.dcx()` instead of `tcx.dcx()` for it to take effect, but it's at least more convenient than sprinkling `set_tainted_by_errors` calls in individual places.
based on https://github.com/rust-lang/rust/pull/127357
r? `@fmease`
|
|
This was seen on Ferrocene, where we have a custom test target that does not have unwind support
|
|
Both test-panic-abort-nocapture.rs and test-panic-abort.rs assert the
stderr output of the test. On Fuchsia, if a test fails an assertion,
this output will contain a line noting the process returned the code
-1028 (ZX_TASK_RETCODE_EXCEPTION_KILL). But the asserted stderr output
lacks this note. Presumably this is because other platforms implement
-Cpanic=abort by killing the process instead of returned a status
code.
|
|
[Coverage][MCDC] Group mcdc tests and fix panic when generating mcdc code for inlined expressions.
### Changes
1. Group all mcdc tests to one directory.
2. Since mcdc instruments different mappings for boolean expressions with normal branch coverage as #125766 introduces, it would be better also trace branch coverage results in mcdc tests.
3. So far rustc does not call `CoverageInfoBuilderMethods::init_coverage` for inlined functions. As a result, it could panic if it tries to instrument mcdc statements for inlined functions due to uninitialized cond bitmaps. We can reproduce this issue by current nightly rustc and [the test](https://github.com/rust-lang/rust/pull/127234/files#diff-c81af6bf4869aa42f5c7334e3e86344475de362f673f54ce439ec75fcb5ac3e5) with flag `--release`. This patch fixes it.
|
|
|
|
|
|
Co-Developed-by: Eric Holk
Signed-off-by: Vincenzo Palazzo <vincenzopalazzodev@gmail.com>
|
|
This is adding a migration lint for the current (in the 2021 edition and previous)
to move expr to expr_2021 from expr
Co-Developed-by: Eric Holk
Signed-off-by: Vincenzo Palazzo <vincenzopalazzodev@gmail.com>
|
|
Fix regression in the MIR lowering of or-patterns
In https://github.com/rust-lang/rust/pull/126553 I made a silly indexing mistake and regressed the MIR lowering of or-patterns. This fixes it.
r? `@compiler-errors` because I'd like this to be merged quickly :pray:
|
|
|
|
|
|
|
|
|