Commit Graph

172434 Commits

Author SHA1 Message Date
Lewis McClelland dd79b039e4 Add docs about SDKs on armv7a-vex-v5 2026-04-09 23:03:33 -04:00
bors f5eca4fcfa Auto merge of #155052 - JonathanBrouwer:rollup-TlewACE, r=JonathanBrouwer
Rollup of 2 pull requests

Successful merges:

 - rust-lang/rust#155042 (Update cargo submodule)
 - rust-lang/rust#154930 (Revert performing basic const checks in typeck on stable)
2026-04-09 17:10:53 +00:00
Weihang Lo 6b4527866c Update cargo submodule 2026-04-09 10:03:04 -04:00
bors a87c9b9603 Auto merge of #154368 - aerooneqq:delegation-force-lowering-later, r=petrochenkov
delegation: fix cycles during delayed lowering



This PR forces lowering of delayed owners after `hir_crate_items`, as some diagnostics use `hir_crate_items` which results in query cycle which is then hangs calling `def_path_str` again and again. Fixes rust-lang/rust#154169. Part of rust-lang/rust#118212.

r? @petrochenkov
2026-04-09 13:26:48 +00:00
aerooneqq dac2e3eedf Fix cycles during delayed lowering 2026-04-09 15:13:50 +03:00
Jacob Pratt a2d7d8c8da Rollup merge of #154955 - cijiugechu:fix-rustdoc-pattern-type-implementors, r=notriddle
Fix pattern types rendering in rustdoc

Closes rust-lang/rust#150889 .

`core` was rendering local pattern-type impls through `clean_ty`, which formatted `rustc_hir::TyPat` with derived Debug, while inlined docs go through `clean_middle_ty` and get the pretty-printed `rustc_middle::ty::Pattern`.
Lower local HIR pattern types before formatting so both paths share the same canonical pattern printer and stop exposing `TyPat { ... }` in implementors.

#### Current result:
<img width="1133" height="738" alt="截屏2026-04-07 22 47 26" src="https://github.com/user-attachments/assets/bb5f8942-30b1-400a-a0a0-f581da5bb59f" />
2026-04-09 02:31:08 -04:00
Jacob Pratt 98a6d389d8 Rollup merge of #155007 - josetorrs:rename-is-impl-trait, r=WaffleLapkin,Kivooeo
renaming method is_impl_trait to is_opaque

Completing one of the tasks mentioned in this issue: https://github.com/rust-lang/rust/issues/154941

r? @WaffleLapkin
2026-04-08 23:04:00 -04:00
Jose 501480e15e fixing clippy reference 2026-04-08 16:58:59 -04:00
bors 9004856428 Auto merge of #153838 - oli-obk:use-tree-span, r=davidtwco
Use fine grained component-wise span tracking in use trees

This often produces nicer spans and even doesn't need a Span field anymore (not that I expect the unused field to affect any perf, but still neat).
2026-04-08 20:09:27 +00:00
bors 033b9255d4 Auto merge of #154987 - weihanglo:update-cargo, r=weihanglo
Cargo submodule update

11 commits in a357df4c26fc14514e66aae2a269456b5545c7db..101549dddbd2b08e806f50154e3aa4cb3374cc21
2026-04-03 16:47:15 +0000 to 2026-04-08 12:51:20 +0000
- Never include use extra-filename in build scripts (rust-lang/cargo#16855)
- fix(toml): Force script edition warnings on quiet  (rust-lang/cargo#16848)
- GitHub fast path uses `http_async` (rust-lang/cargo#16847)
- feat(manifest): allow git dependency alongside alternate registry (rust-lang/cargo#16810)
- fix(auth): add auth scheme hint to token rejected error for alt registries (rust-lang/cargo#16794)
- Warn on invalid jobserver file descriptors (rust-lang/cargo#16843)
- docs(unstable): List the minimum required MSRV for 'public' field (rust-lang/cargo#16841)
- feat(lints): Emit unused_dependencies lint (rust-lang/cargo#16600)
- fix(tree): clarify error message when `-i` is used without a package name (rust-lang/cargo#16818)
- fix: Typo in target.&lt;cfg&gt;.linker (rust-lang/cargo#16839)
- Send Content-Type header with cargo publish requests (rust-lang/cargo#16832)

r? ghost
2026-04-08 16:54:41 +00:00
Weihang Lo a7c49ec700 Cargo submodule update 2026-04-08 10:11:15 -04:00
Jonathan Brouwer aa6dfed2d6 Rollup merge of #154980 - tshepang:rdg-sync, r=tshepang
rustc-dev-guide subtree update

Subtree update of `rustc-dev-guide` to https://github.com/rust-lang/rustc-dev-guide/commit/912f6c606ab85868f773db8ee72605f957103da5.

Created using https://github.com/rust-lang/josh-sync.

r? @ghost
2026-04-08 14:22:08 +02:00
Jonathan Brouwer 3e027ff0f0 Rollup merge of #154184 - folkertdev:stabilize-s390x-vector-registers, r=Amanieu
stabilize s390x vector registers

tracking issue: https://github.com/rust-lang/rust/issues/133416
reference PR: https://github.com/rust-lang/reference/pull/2215

Stabilizes s390x vector registers, e.g.

```rust
unsafe fn vreg_128(x: i128) -> i128 {
    let y;
    asm!("vlr {}, {}", out(vreg) y, in(vreg) x);
    y
}
```

The types that are accepted for vreg registers are

- all float types `f16`,  `f32`, `f64`, `f128`
- integer types `i32`, `i64` and `i128` and their unsigned counterparts
- integer vector types `i8x16`, `i16x8`, `i32x4`, `i64x2` and their unsigned counterparts
- float vector types `f16x8`, `f32x4` and `f64x2`

Support for all of these is tested in https://github.com/rust-lang/rust/blob/main/tests/assembly-llvm/asm/s390x-types.rs, and the types correspond with the LLVM definition in https://github.com/llvm/llvm-project/blob/df9eb79970c012990e829d174d181d575d414efe/llvm/lib/Target/SystemZ/SystemZRegisterInfo.td#L312-L339

The `f16`, `f16x8` and `f128` types are unstable, and so can't be used on stable in practice. They do show up in some error messages though.

`vreg` was previously only accepted as a clobber.

---

Currently the vector types in `core::arch::s390x` are still unstable. Separately stabilizing `vreg` is still useful because scalar types can also be put into `vreg`s.

## Implementation history

- https://github.com/rust-lang/rust/pull/131664
- https://github.com/rust-lang/rust/pull/150826

cc @uweigand @taiki-e
r? @Amanieu
2026-04-08 14:21:58 +02:00
Oli Scherer 9017621ace Use fine grained component-wise span tracking in use trees 2026-04-08 12:37:25 +02:00
Tshepang Mbambo ee33056fc7 Merge pull request #2825 from rust-lang/tshepang/sembr
sembr a few files
2026-04-08 09:01:44 +02:00
Tshepang Mbambo 5f8694755c Merge pull request #2826 from rust-lang/tshepang/nits
missing pause
2026-04-08 09:00:50 +02:00
Tshepang Mbambo 050110d507 re-flow 2026-04-08 08:57:19 +02:00
Tshepang Mbambo da97a7f7bb sembr src/tests/adding.md 2026-04-08 08:52:00 +02:00
Tshepang Mbambo 9c0a07250f re-wrap 2026-04-08 08:50:45 +02:00
Tshepang Mbambo d82e7c1172 sembr src/rustdoc-internals.md 2026-04-08 08:48:20 +02:00
Tshepang Mbambo 9634bb7e6b re-wrap 2026-04-08 08:47:51 +02:00
Tshepang Mbambo 2554c21df2 sembr src/hir.md 2026-04-08 08:45:18 +02:00
Tshepang Mbambo 7440567b40 re-wrap 2026-04-08 08:44:26 +02:00
Tshepang Mbambo b03b12e6a8 sembr src/ty-module/generic-arguments.md 2026-04-08 08:41:25 +02:00
Tshepang Mbambo 425b2b3850 skipped by sembr tool (due to "e.g.") 2026-04-08 08:40:47 +02:00
Tshepang Mbambo 66bf17e1ef slight improvements 2026-04-08 08:39:46 +02:00
Tshepang Mbambo 67ce02bb3b sembr src/traits/separate-projection-bounds.md 2026-04-08 08:37:03 +02:00
Tshepang Mbambo 238aabb2bf whitespace 2026-04-08 08:35:36 +02:00
Tshepang Mbambo 91cfd3b869 sembr src/const-eval/interpret.md 2026-04-08 08:27:18 +02:00
Tshepang Mbambo 49b1d75ba2 re-wrap 2026-04-08 08:26:24 +02:00
Tshepang Mbambo 97eb1be510 sembr src/appendix/code-index.md 2026-04-08 08:24:24 +02:00
Tshepang Mbambo f803c18f19 Merge pull request #2800 from reddevilmidzy/ast-low
Document AST lowering implementation
2026-04-08 08:20:50 +02:00
The rustc-josh-sync Cronjob Bot 444452b606 Merge ref '30d0309fa821' from rust-lang/rust
Pull recent changes from https://github.com/rust-lang/rust via Josh.

Upstream ref: rust-lang/rust@30d0309fa8
Filtered ref: rust-lang/rustc-dev-guide@8572b41699
Upstream diff: https://github.com/rust-lang/rust/compare/9602bda1dd0c1bbf5787e398385bbac81fd532f8...30d0309fa821f7a0984a9629e0d227ca3c0d2eda

This merge was created using https://github.com/rust-lang/josh-sync.
2026-04-08 06:16:49 +00:00
The rustc-josh-sync Cronjob Bot 1b09ce5272 Prepare for merging from rust-lang/rust
This updates the rust-version file to 30d0309fa8.
2026-04-08 06:16:43 +00:00
Tshepang Mbambo 8b7de24021 Merge pull request #2801 from malezjaa/new-on-unimplemented-match-values
new rustc_on_unimplemented match values
2026-04-08 07:53:14 +02:00
Tshepang Mbambo ca691688a1 missing pause 2026-04-08 07:40:44 +02:00
Jacob Pratt 084a82eec7 Rollup merge of #154902 - shivendra02467:fix-rustdoc-macro-inline, r=lolbinarycat
rustdoc: Inherit inline attributes for declarative macros

When explicitly re-exporting a declarative macro by name, rustdoc previously bypassed intermediate re-exports and dropped `#[doc(inline)]` attributes, causing the macro to be incorrectly stripped if the original definition was `#[doc(hidden)]`.

This updates `generate_item_with_correct_attrs` to walk the `reexport_chain` specifically for declarative macros, allowing them to inherit inline attributes exactly as glob imports do, while preserving strict visibility rules for standard items.

Fixes rust-lang/rust#154694
2026-04-07 23:05:32 -04:00
bors c756124775 Auto merge of #154958 - JonathanBrouwer:rollup-PEahluH, r=JonathanBrouwer
Rollup of 22 pull requests

Successful merges:

 - rust-lang/rust#150965 (Fix no results when searching for == in doc)
 - rust-lang/rust#153999 (Remove `TaggedQueryKey::def_kind`)
 - rust-lang/rust#154146 (Split out the creation of `Cycle` to a new `process_cycle` function)
 - rust-lang/rust#154147 (Do not attempt generating DllImport for extern types)
 - rust-lang/rust#154812 (Update Fira Mono License Information)
 - rust-lang/rust#154880 (bootstrap: minor improvements to download-rustc)
 - rust-lang/rust#154886 (Stabilize check-cfg suggestions for symbol)
 - rust-lang/rust#154889 (Update wasm-component-ld to 0.5.22)
 - rust-lang/rust#154928 (Fix pin docs)
 - rust-lang/rust#154942 (delegation: generate more verbose error delegation)
 - rust-lang/rust#153269 (GCI: During reachability analysis don't try to evaluate the initializer of overly generic free const items)
 - rust-lang/rust#154506 (Migrate some tests from `tests/ui/issues` to appropriate directories)
 - rust-lang/rust#154673 (Use a different name for fast try builds)
 - rust-lang/rust#154761 (coretests: add argument order regression tests for min_by/max_by/minmax_by)
 - rust-lang/rust#154795 (Add more info about where autodiff can be applied)
 - rust-lang/rust#154808 (Post-attribute ports cleanup pt. 1)
 - rust-lang/rust#154825 (constify `Step for NonZero<u*>`)
 - rust-lang/rust#154837 (library: std: motor: use OS' process::exit in abort_internal)
 - rust-lang/rust#154866 (add regression test for rust-lang/rust#146514)
 - rust-lang/rust#154922 (c-b: Export inverse hyperbolic trigonometric functions)
 - rust-lang/rust#154931 (delegation(small cleanup): remove not needed PhantomData)
 - rust-lang/rust#154950 (library: no `cfg(target_arch)` on scalable intrinsics)
2026-04-07 19:43:18 +00:00
bors ad4b935400 Auto merge of #154734 - weihanglo:update-cargo, r=weihanglo
Update cargo submodule



15 commits in 888f675344eb1cf2308fd53183e667bdd2c58e51..a357df4c26fc14514e66aae2a269456b5545c7db
2026-03-30 16:59:25 +0000 to 2026-04-03 16:47:15 +0000
- chore: downgrade to libz-sys@1.1.24 (rust-lang/cargo#16833)
- feat: add frame-pointers profile option (rust-lang/cargo#16742)
- upgrade to gix@0.81.0 (rust-lang/cargo#16828)
- refactor(network): use async for registry network operations (rust-lang/cargo#16745)
- fix(compile): Don't hide hard warnings with build.warnings=allow (rust-lang/cargo#16827)
- chore: Upgrade incompatible dependencies (rust-lang/cargo#16825)
- fix(compile): build.warnings=allow should not hide denied diagnostics (rust-lang/cargo#16824)
- fix(install): Ignore resolver.lockfile-path (rust-lang/cargo#16823)
- chore(deps): update compatible (rust-lang/cargo#16820)
- refactor(compile): Consolidate output options (rust-lang/cargo#16821)
- refactor: Export public dependencies from internal crates (rust-lang/cargo#16819)
- refactor(progress): Make the code more approachable (rust-lang/cargo#16813)
- Simplified build script bin names in new layout (rust-lang/cargo#16812)
- fix: set CARGO env var during rustc -vV probe (rust-lang/cargo#16811)
- Split out `cargo-util-terminal` (rust-lang/cargo#16809)
2026-04-07 16:32:31 +00:00
Jonathan Brouwer 4e2182cc0d Rollup merge of #154673 - Kobzol:try-job-quick, r=jieyouxu
Use a different name for fast try builds

Based on discussion in https://rust-lang.zulipchat.com/#narrow/channel/242791-t-infra/topic/try.20build.20that.20includes.20Miri.3F/with/581602033.
2026-04-07 17:26:30 +02:00
Jonathan Brouwer 9665f0819a Rollup merge of #154889 - alexcrichton:update-wasm-component-ld, r=Mark-Simulacrum
Update wasm-component-ld to 0.5.22

Same as rust-lang/rust#147495, just keeping it up-to-date.
2026-04-07 17:26:25 +02:00
Jonathan Brouwer e0ce351836 Rollup merge of #154880 - ferrocene:jyn/download-rustc-improvements, r=Kobzol,jieyouxu
bootstrap: minor improvements to download-rustc

Split out from https://github.com/rust-lang/rust/pull/154243.
2026-04-07 17:26:24 +02:00
Jonathan Brouwer 91b63212df Rollup merge of #154812 - kaepr:fira-mono-license, r=notriddle,lolbinarycat
Update Fira Mono License Information

Update license information for Fira Mono font.

The license itself seems to be identical as `FiraSans` license, but didn't reuse it's file as it was explicitly named `FiraSans-LICENSE`.

Added a new LICENSE from https://github.com/mozilla/Fira/blob/master/LICENSE and updated `build` and `static` files setup.

`./x doc library` worked fine locally and was able to see the mono license being minified and served as well.
2026-04-07 17:26:23 +02:00
Jonathan Brouwer a5ff88b439 Rollup merge of #150965 - chenyukang:yukang-fix-doc-search-150921, r=notriddle,GuillaumeGomez
Fix no results when searching for == in doc

Fixes rust-lang/rust#150921

r? @GuillaumeGomez
2026-04-07 17:26:19 +02:00
Jakub Beránek cdde49123f Document the -quick job suffix 2026-04-07 17:23:32 +02:00
cijiugechu 854d2abd78 fix pattern types rendering in rustdoc 2026-04-07 22:26:21 +08:00
Jynn Nelson 9b5e085d53 Don't consider bootstrap/defaults to invalidate the rustc cache
Anything that can change there can also be changed in bootstrap.toml.
We have a separate check to make sure that the local config is
compatable with CI's config.
2026-04-07 16:10:43 +02:00
Jynn Nelson e751cb8bd2 bootstrap: Print why if-unchanged isn't downloading rustc
Example output:
```
$ x b compiler
Building bootstrap
    Finished `dev` profile [unoptimized] target(s) in 0.02s
NOTE: detected 3 modifications that could affect a build of rustc
- src/bootstrap/src/core/config/config.rs
- src/bootstrap/src/core/download.rs
- src/build_helper/src/git.rs
skipping rustc download due to `download-rustc = 'if-unchanged'`
Building stage1 compiler artifacts (stage0 -> stage1, aarch64-apple-darwin)
    Finished `release` profile [optimized] target(s) in 0.72s
Creating a sysroot for stage1 compiler (use `rustup toolchain link 'name' build/host/stage1`)
Build completed successfully in 0:00:05
```
2026-04-07 16:10:43 +02:00
bors c3bd6289f6 Auto merge of #154758 - WaffleLapkin:aliassss, r=lcnr
`ty::Alias` refactor



This PR changes the following alias-related types from this:

```rust
pub enum AliasTyKind {
    Projection,
    Inherent,
    Opaque,
    Free,
}

pub struct AliasTy<I: Interner> {
    pub args: I::GenericArgs,
    pub def_id: I::DefId,
}

pub enum TyKind<I: Interner> {
    ...
    Alias(AliasTyKind, AliasTy<I>),
}
```
Into this:

```rust
pub enum AliasTyKind<I: Interner> {
    Projection { def_id: I::DefId },
    Inherent { def_id: I::DefId },
    Opaque { def_id: I::DefId },
    Free { def_id: I::DefId },
}

pub struct AliasTy<I: Interner> {
    pub args: I::GenericArgs,
    pub kind: AliasTyKind<I>,
}

pub enum TyKind<I: Interner> {
    ...
    Alias(AliasTy<I>),
}
```

... and then does a thousand other changes to accommodate for this change everywhere.

This brings us closer to being able to have `AliasTyKind`s which don't require a `DefId` (and thus can be more easily created, etc). Although notably we depend on both `AliasTyKind -> DefId` and `DefId -> AliasTyKind` conversions in a bunch of places still.

r? lcnr

----

A lot of these changes were done either by search & replace (via `ast-grep`) or on auto pilot, so I'm not quite sure I didn't mess up somewhere, but at least tests pass...
2026-04-07 12:56:57 +00:00
yukang 03b453cda3 Fix no results when searching for == in doc 2026-04-07 19:32:43 +08:00