| Age | Commit message (Collapse) | Author | Lines |
|
|
|
|
|
|
|
fix: Fix expand macro recursively not working correctly for nested macro calls
|
|
Add more workaround hacks for incorrect startup diagnostics
|
|
fix: Only compute unstable paths on nightly toolchains for IDE features
|
|
|
|
|
|
|
|
|
|
Rollup of 9 pull requests
Successful merges:
- rust-lang/rust#145095 (Migrate `UnsizedConstParamTy` to unstable impl of `ConstParamTy_`)
- rust-lang/rust#145960 (Split `FnCtxt::report_args_error` into subfunctions)
- rust-lang/rust#146402 (interpret: fix overlapping aggregate initialization)
- rust-lang/rust#146466 (llvm-wrapper: other cleanup)
- rust-lang/rust#146574 (compiletest: Enable new-output-capture by default)
- rust-lang/rust#146599 (replace some `#[const_trait]` with `const trait`)
- rust-lang/rust#146601 (compiletest: Make `./x test --test-args ...` work again)
- rust-lang/rust#146608 (improve internal bootstrap docs)
- rust-lang/rust#146609 (bootstrap: lower verbosity of cargo to one less than bootstrap's)
r? `@ghost`
`@rustbot` modify labels: rollup
|
|
|
|
|
|
This recognizes the following expression as being equivalent to the
question mark:
```rust
match x {
Ok(v) => v,
Err(e) => return Err(e.into()), // or `Into::into(x)` or `<T as Into<U>>::into(x)`
}
```
Fixes rust-lang/rust-clippy#15679
changelog: [`question_mark`]: recognizes a match with an early return
with a call to `.into()` as possibly equivalent to a question mark
|
|
bootstrap: lower verbosity of cargo to one less than bootstrap's
the main thing this does is eliminate the "Fresh ..." output when `--verbose` is only passed once.
r? `@Kobzol`
|
|
improve internal bootstrap docs
Mainly focused on making it easier to figure out how tools get built without having to read the `bootstrap_tool!` macro, but also added some subdirs of `build/` to the readme.
|
|
compiletest: Make `./x test --test-args ...` work again
It accidentally broke with https://github.com/rust-lang/rust/pull/146501. The intention of that PR was to keep existing behavior if `--exact` is not used, but it had a bug. This PR fixes that bug.
|
|
replace some `#[const_trait]` with `const trait`
|
|
compiletest: Enable new-output-capture by default
The new output-capture implementation was added in rust-lang/rust#146119, but was disabled by default and required opt-in.
Since then, I haven't encountered any problems in my own testing/usage, and I haven't heard any problem reports from other contributors who might have opted in.
It's unlikely that more opt-in testing will help, so the next step is to enable new-output-capture by default and see if anyone complains. (Hopefully nobody!)
If needed, the new default can be overridden (for now) by setting environment variable `COMPILETEST_NEW_OUTPUT_CAPTURE=off`. Please file an issue (or let me know) if anyone finds a reason to do this.
r? jieyouxu
|
|
llvm-wrapper: other cleanup
Cleanup few things around llvm-wrapper:
First commit removes unused macro, added back in https://github.com/rust-lang/rust/pull/31709 it was used in `LLVMRustHasFeature`; second removes unused function, third one removes `jsbackend` llvm component - this is looks like remnants of some removed backend?
|
|
interpret: fix overlapping aggregate initialization
This fixes the problem pointed out by ````@saethlin```` in https://github.com/rust-lang/rust/issues/146383#issuecomment-3273224645.
Also clarify when exactly current de-facto MIR semantics allow overlap of the LHS and RHS in an assignment.
|
|
Split `FnCtxt::report_args_error` into subfunctions
|
|
Migrate `UnsizedConstParamTy` to unstable impl of `ConstParamTy_`
Now that we have ``#[unstable_feature_bound]``, we can remove ``UnsizedConstParamTy`` that was meant to be an unstable impl of stable type and ``ConstParamTy_`` trait.
r? `@BoxyUwU`
|
|
Rollup of 9 pull requests
Successful merges:
- rust-lang/rust#146344 (tests/codegen-llvm: Make rust-abi-arch-specific-adjustment portable)
- rust-lang/rust#146530 (rustc_codegen_llvm: Adjust RISC-V inline assembly's clobber list)
- rust-lang/rust#146533 (Note some previous attempts to change the Default impl for `[T; 0]`)
- rust-lang/rust#146539 (fix 404 MCP link)
- rust-lang/rust#146546 (Switch `std::vec::PeekMut::pop` from self to this parameter.)
- rust-lang/rust#146549 (On FreeBSD, use readdir instead of readdir_r)
- rust-lang/rust#146559 (Fix typo in error message)
- rust-lang/rust#146563 (bootstrap.py: disable incremental build for bootstrap in CI)
- rust-lang/rust#146576 (opt-dist: don't set `RUST_LOG=collector=debug`)
r? `@ghost`
`@rustbot` modify labels: rollup
|
|
fix: More precise clause filtering for `explicit_*_predicates_of`
|
|
opt-dist: don't set `RUST_LOG=collector=debug`
see https://rust-lang.zulipchat.com/#narrow/channel/122651-general/topic/opt-dist.3A.20do.20not.20set.20RUST_LOG.3Dcollector.3Ddebug.20forcefully
r? Kobzol
|
|
bootstrap.py: disable incremental build for bootstrap in CI
locally this seems to save a quarter of a second per build of bootstrap, presumably mainly because it avoids writing 280MB to disk. unsure if this is worth two extra lines of python, i'll let t-bootstrap decide.
|
|
Fix typo in error message
|
|
On FreeBSD, use readdir instead of readdir_r
readdir_r has the same problems on FreeBSD as it does on other platforms: it assumes a fixed NAME_MAX. And readdir has the same thread-safety guarantee as it does on other platforms: it's safe as long as only one thread tries to read from the directory stream at a given time.
Furthermore, readdir_r is likely to be removed for FreeBSD 16, so we should stop using it now.
|
|
Switch `std::vec::PeekMut::pop` from self to this parameter.
Since PeekMut implements Deref, it shouldn't have any methods of its own.
See also: `std::collections::binary_heap::PeekMut::pop`
Pointed out: https://github.com/rust-lang/rust/issues/122742#issuecomment-3064050551
Related: rust-lang/rust#122742
|
|
fix 404 MCP link
I think this is what this should point to.
The old link did a redirect, so one could also fix the redirect, but i wasn't able to find where the redirect target is defined.
Found in https://rust-lang.zulipchat.com/#narrow/channel/242906-t-compiler.2Farm/topic/Tier.20changes.20for.20bare-metal.20Arm.20AArch32.20targets/with/539395822
|
|
Note some previous attempts to change the Default impl for `[T; 0]`
Recently, rust-lang/rust#145457 experimented with changing the Default impl for `[T; 0]`.
Subsequently, rust-lang/rust#146531 also aimed to perform a similar experiment.
It seems like a good idea to add some links to the relevant source code, so that the historical context of this tricky topic is easier to find.
|
|
r=Amanieu
rustc_codegen_llvm: Adjust RISC-V inline assembly's clobber list
Despite that the `fflags` register (representing floating point exception flags) is stated as a flag register [in the reference](https://doc.rust-lang.org/reference/inline-assembly.html#r-asm.rules.preserved-registers), it's not
in the default clobber list of the RISC-V inline assembly and it would be better to fix it.
|
|
r=Mark-Simulacrum
tests/codegen-llvm: Make rust-abi-arch-specific-adjustment portable
This test currently only runs on RISC-V and loongarch hosts, but assumes that the host target is the -gnu target. By using minicore, we can run this test on all host targets, regardless of architecture, as long as the LLVM components are built.
This also fixes this test on musl hosts of these architectures (though I've only tested on loongarch64-unknown-linux-musl).
|
|
Add relnotes for 1.90.0
r? `@Mark-Simulacrum`
cc `@rust-lang/release`
`@rustbot` ping relnotes-interest-group
|
|
non_region_infer
|
|
the main thing this does is eliminate the "Fresh ..." output when
`--verbose` is only passed once.
|
|
RISC-V: Improvements of inline assembly uses
|
|
|
|
Clarify that backtick escaping doesn't work for `@bors try jobs`
|
|
Co-authored-by: Ralf Jung <post@ralfj.de>
|
|
|
|
This commit can be replicated by running
`cargo update -p rustfix --precise 0.8.7 && x test ui --bless`.
---
The reasons this affects UI tests is as follows:
- The UI test suite runs rustc with
`-Z deduplicate-diagnostics=no --error-format=json`,
which means that rustc emits multiple errors containing identical
suggestions. That caused the weird-looking code that had multiple `X: Copy` suggestions.
- Those suggestions are interpreted not by rustc itself, but by the
`rustfix` library, maintained by cargo but published as a separate
crates.io library and used by compiletest.
- Sometime between rustfix 0.8.1 and 0.8.7 (probably in cargo 14747, but
it's hard to tell because rustfix's versioning doesn't match cargo's),
rustfix got smarter and stopped applying duplicate suggestions.
Update rustfix to match cargo's behavior. Ideally, we would always share
a version of rustfix between cargo and rustc (perhaps with a path
dependency?), to make sure we are testing the behavior we ship. But for
now, just manually update it to match.
Note that the latest version of rustfix published to crates.io is 0.9.1,
not 0.8.7. But 0.9.1 is not the version used in cargo, which is 0.9.3.
Rather than trying to match versions exactly, I just updated rustfix to
the latest in the 0.8 branch.
|
|
|
|
|
|
|
|
|
|
|
|
It accidentally broke with a48c8e337d1. The intention of that commit was
to keep existing behavior if `--exact` is not used, but it had a bug.
This commit fixes that bug.
|
|
This started from porting coercion, but ended with porting much more.
|