about summary refs log tree commit diff
AgeCommit message (Collapse)AuthorLines
2025-04-02Rollup merge of #139232 - nnethercote:remove-Map-5, r=ZalatharTakayuki Maeda-208/+175
Move methods from `Map` to `TyCtxt`, part 5. This eliminates all methods on `Map`. Actually removing `Map` will occur in a follow-up PR. A follow-up to #137504. r? `@Zalathar`
2025-04-02Rollup merge of #139215 - clubby789:std-size-tweaks, r=joboetTakayuki Maeda-0/+3
Add `opt-level = "s"` for more std symbolication crates This reduces the size of a hello world binary built by stage 1 in release by a few kilobytes
2025-04-02Rollup merge of #139184 - Urgau:crate-root-lint-levels, r=jieyouxuTakayuki Maeda-9/+213
Add unstable `--print=crate-root-lint-levels` This PR implements `--print=crate-root-lint-levels` from MCP 833 https://github.com/rust-lang/compiler-team/issues/833. Tracking issue: https://github.com/rust-lang/rust/issues/139180 Best reviewed commit by commit.
2025-04-02Rollup merge of #139178 - apiraino:remove-cjgillot-automated-assighment, ↵Takayuki Maeda-2/+1
r=cjgillot Remove cjgillot from automated review assignment As discussed [on Zulip](https://rust-lang.zulipchat.com/#narrow/channel/131828-t-compiler/topic/Review.20for.20.23137465/with/508540539). To be clear, this is not a value judgement, it's just a way to improve our fairness when assigning reviews, trying to find a balance between leaving time to Rust contributors review on their terms and availability and avoid having PRs waiting for too long. > [!IMPORTANT] > This is not a final decision! Rust contributors are free to re-add themselves back to the active review rotation (if they feel like it) once they have more availability. cc: `@cjgillot`
2025-04-02Auto merge of #139018 - oli-obk:incremental-trait-impls, r=compiler-errorsbors-94/+97
Various local trait item iteration cleanups Adding a trait impl for `Foo` unconditionally affected all queries that are interested in a completely independent trait `Bar`. Perf has no effect on this. We probably don't have a good perf test for this tho. r? `@compiler-errors` I am unsure about https://github.com/rust-lang/rust/pull/139018/commits/9d05efb66f7b599eeacb5d2456f844fe4768e865 as it doesn't improve anything wrt incremental, because we still do all the checks for valid `Drop` impls, which subsequently will still invoke many queries and basically keep the depgraph the same. I want to do https://github.com/rust-lang/rust/blob/9549077a47099dc826039c051b528d1013740e6f/compiler/rustc_middle/src/ty/trait_def.rs#L141 but would leave that to a follow-up PR, this one changes enough things as it is
2025-04-02Only walk local items instead of filtering for them laterOli Scherer-23/+19
2025-04-02Remove a function that has no necessary callersOli Scherer-17/+2
2025-04-02Remove a `hir_*` helper that was just forwarding to a queryOli Scherer-6/+2
2025-04-02Directly fetch the impl self typeOli Scherer-2/+2
2025-04-02Fetch the destructor constness lazilyOli Scherer-8/+6
2025-04-02Only look at trait impls in the current crate when looking for `Drop` implsOli Scherer-18/+30
2025-04-02Auto merge of #138848 - clubby789:cargo-update, r=Mark-Simulacrumbors-577/+611
Update dependencies #136077 needs manual tweaking ``` compiler and tools dependencies Updating anyhow v1.0.95 -> v1.0.97 Updating basic-toml v0.1.9 -> v0.1.10 Updating bitflags v2.8.0 -> v2.9.0 Updating blake3 v1.5.5 -> v1.8.0 Updating bumpalo v3.16.0 -> v3.17.0 Removing byteorder v1.5.0 Updating bytes v1.9.0 -> v1.10.1 Updating cargo_metadata v0.19.1 -> v0.19.2 Updating chrono v0.4.39 -> v0.4.40 Updating chrono-tz v0.10.1 -> v0.10.3 Updating chrono-tz-build v0.4.0 -> v0.4.1 Updating clap v4.5.26 -> v4.5.35 Updating clap_builder v4.5.26 -> v4.5.35 Updating clap_derive v4.5.24 -> v4.5.35 Updating console v0.15.10 -> v0.15.11 Updating cpufeatures v0.2.16 -> v0.2.17 Updating curl-sys v0.4.78+curl-8.11.0 -> v0.4.80+curl-8.12.1 Updating darling v0.20.10 -> v0.20.11 Updating darling_core v0.20.10 -> v0.20.11 Updating darling_macro v0.20.10 -> v0.20.11 Updating deranged v0.3.11 -> v0.4.1 Updating dissimilar v1.0.9 -> v1.0.10 Updating either v1.13.0 -> v1.15.0 Updating elsa v1.11.0 -> v1.11.2 Updating env_logger v0.11.6 -> v0.11.7 Updating equivalent v1.0.1 -> v1.0.2 Updating flate2 v1.0.35 -> v1.1.0 Updating foldhash v0.1.4 -> v0.1.5 Updating getrandom v0.3.1 -> v0.3.2 Updating globset v0.4.15 -> v0.4.16 Downgrading html5ever v0.29.2 -> v0.29.1 (available: v0.30.0) Updating humantime v2.1.0 -> v2.2.0 Updating icu_list_data v1.5.0 -> v1.5.1 Updating icu_locid_transform_data v1.5.0 -> v1.5.1 Updating icu_normalizer_data v1.5.0 -> v1.5.1 Updating icu_properties_data v1.5.0 -> v1.5.1 Updating indexmap v2.7.0 -> v2.8.0 Updating indicatif v0.17.9 -> v0.17.11 Updating inout v0.1.3 -> v0.1.4 Updating itoa v1.0.14 -> v1.0.15 Adding jiff v0.2.5 Adding jiff-static v0.2.5 Updating jobserver v0.1.32 -> v0.1.33 Updating lexopt v0.3.0 -> v0.3.1 Adding leb128fmt v0.1.0 Updating libc v0.2.169 -> v0.2.171 Updating libz-sys v1.1.21 -> v1.1.22 Updating linux-raw-sys v0.4.15 -> v0.9.3 Updating litemap v0.7.4 -> v0.7.5 Updating log v0.4.25 -> v0.4.27 Downgrading markup5ever v0.15.0 -> v0.14.1 Updating miniz_oxide v0.8.3 -> v0.8.5 Updating once_cell v1.20.2 -> v1.21.3 Updating openssl-probe v0.1.5 -> v0.1.6 Updating openssl-sys v0.9.104 -> v0.9.106 Updating pest v2.7.15 -> v2.8.0 Updating pest_derive v2.7.15 -> v2.8.0 Updating pest_generator v2.7.15 -> v2.8.0 Updating pest_meta v2.7.15 -> v2.8.0 Updating pkg-config v0.3.31 -> v0.3.32 Updating portable-atomic v1.10.0 -> v1.11.0 Adding portable-atomic-util v0.2.4 Updating ppv-lite86 v0.2.20 -> v0.2.21 Updating proc-macro2 v1.0.93 -> v1.0.94 Updating quote v1.0.38 -> v1.0.40 Adding r-efi v5.2.0 Updating rand_core v0.9.0 -> v0.9.3 Updating redox_syscall v0.5.8 -> v0.5.10 Updating rustc-stable-hash v0.1.1 -> v0.1.2 Updating rustc_tools_util v0.4.0 -> v0.4.2 Updating rustix v0.38.43 -> v1.0.5 Updating rustversion v1.0.19 -> v1.0.20 Updating ryu v1.0.18 -> v1.0.20 Updating semver v1.0.24 -> v1.0.26 Updating serde v1.0.217 -> v1.0.219 Updating serde_derive v1.0.217 -> v1.0.219 Updating serde_json v1.0.135 -> v1.0.140 Updating similar v2.6.0 -> v2.7.0 Updating smallvec v1.13.2 -> v1.14.0 Updating socket2 v0.5.8 -> v0.5.9 Updating stacker v0.1.18 -> v0.1.20 Updating string_cache v0.8.8 -> v0.8.9 Updating syn v2.0.96 -> v2.0.100 Updating tar v0.4.43 -> v0.4.44 Updating tempfile v3.15.0 -> v3.19.1 Updating thin-vec v0.2.13 -> v0.2.14 Updating thiserror v2.0.11 -> v2.0.12 Updating thiserror-impl v2.0.11 -> v2.0.12 Updating time v0.3.37 -> v0.3.41 Updating time-core v0.1.2 -> v0.1.4 Updating time-macros v0.2.19 -> v0.2.22 Updating tinyvec v1.8.1 -> v1.9.0 Updating tokio v1.43.0 -> v1.44.1 Updating typenum v1.17.0 -> v1.18.0 Updating unicode-ident v1.0.14 -> v1.0.18 Updating uuid v1.12.0 -> v1.16.0 Updating wasi v0.13.3+wasi-0.2.2 -> v0.14.2+wasi-0.2.4 Removing wasm-encoder v0.219.1 Removing wasm-encoder v0.223.0 Adding wasm-encoder v0.219.2 (available: v0.227.1) Adding wasm-encoder v0.223.1 Adding wasm-encoder v0.228.0 Updating wasm-metadata v0.223.0 -> v0.223.1 Removing wasmparser v0.219.1 Removing wasmparser v0.222.0 Removing wasmparser v0.223.0 Adding wasmparser v0.219.2 (available: v0.227.1) Adding wasmparser v0.222.1 Adding wasmparser v0.223.1 Adding wasmparser v0.228.0 Updating wast v223.0.0 -> v228.0.0 Updating wat v1.223.0 -> v1.228.0 Updating windows-core v0.52.0 -> v0.61.0 Adding windows-implement v0.60.0 Updating windows-interface v0.59.0 -> v0.59.1 Adding windows-link v0.1.1 Updating windows-result v0.3.0 -> v0.3.2 Updating windows-strings v0.3.0 -> v0.3.1 Adding windows-strings v0.4.0 Updating wit-bindgen-rt v0.33.0 -> v0.39.0 Updating wit-component v0.223.0 -> v0.223.1 Updating wit-parser v0.223.0 -> v0.223.1 Updating xattr v1.4.0 -> v1.5.0 Updating zerocopy v0.8.14 -> v0.8.24 Updating zerocopy-derive v0.8.14 -> v0.8.24 Updating zerofrom v0.1.5 -> v0.1.6 Updating zerofrom-derive v0.1.5 -> v0.1.6 ```
2025-04-02Auto merge of #139229 - Zalathar:rollup-5cs3f4d, r=Zalatharbors-583/+760
Rollup of 14 pull requests Successful merges: - #135295 (Check empty SIMD vector in inline asm) - #138003 (Add the new `amx` target features and the `movrs` target feature) - #138823 (rustc_target: RISC-V: add base `I`-related important extensions) - #138913 (Remove even more instances of `@ts-expect-error` from search.js) - #138941 (Do not mix normalized and unnormalized caller bounds when constructing param-env for `receiver_is_dispatchable`) - #139060 (replace commit placeholder in vendor status with actual commit) - #139102 (coverage: Avoid splitting spans during span extraction/refinement) - #139191 (small opaque type/borrowck cleanup) - #139200 (Skip suggest impl or dyn when poly trait is not a real trait) - #139208 (fix dead link netbsd.md) - #139210 (chore: remove redundant backtick) - #139212 (Update mdbook to 0.4.48) - #139214 (Tell rustfmt to use the 2024 edition in ./x.py fmt) - #139225 (move autodiff from EnzymeAD/Enzyme to our rust-lang/Enzyme soft-fork) r? `@ghost` `@rustbot` modify labels: rollup
2025-04-02Rollup merge of #139225 - EnzymeAD:rust-lang-enzyme, r=jieyouxuStuart Cook-1/+1
move autodiff from EnzymeAD/Enzyme to our rust-lang/Enzyme soft-fork In https://github.com/rust-lang/team/pull/1665 we decided to have a soft-fork of Enzyme, to be able to merge e.g. CI, docs, or cmake improvements if upstream is not interested in them. We don't intend to merge logic/code changes. It also seems generally preferable if we clone submodules from a rust-lang repo, instead of an external org. We don't build or checkout Enzyme yet by default, so this should be a safe rollup.
2025-04-02Rollup merge of #139214 - bjorn3:edition_2024_rustfmt, r=compiler-errorsStuart Cook-31/+34
Tell rustfmt to use the 2024 edition in ./x.py fmt Most crates in this repo have been moved to the 2024 edition already. This also allows removing a rustfmt exclusion for a cg_clif test.
2025-04-02Rollup merge of #139212 - ehuss:update-mdbook, r=Mark-SimulacrumStuart Cook-5/+4
Update mdbook to 0.4.48 This brings in several updates. Two significant ones are to halve the search index size, and the other introduces major changes to footnote rendering. Changelog: https://github.com/rust-lang/mdBook/blob/master/CHANGELOG.md#mdbook-0448
2025-04-02Rollup merge of #139210 - highcloudwind:master, r=aDotInTheVoidStuart Cook-1/+1
chore: remove redundant backtick remove redundant backtick
2025-04-02Rollup merge of #139208 - futreall:master, r=jieyouxuStuart Cook-1/+1
fix dead link netbsd.md src/doc/rustc/src/platform-support/netbsd.md https://github.com/NetBSD/pkgsrc-wip/blob/master/rust/Makefile - https://github.com/NetBSD/pkgsrc-wip/blob/master/Makefile
2025-04-02Rollup merge of #139200 - xizheyin:issue-139174, r=compiler-errorsStuart Cook-0/+65
Skip suggest impl or dyn when poly trait is not a real trait Fixes #139174 When `poly_trait_ref` is not a real trait, we should stop suggesting `impl` and `dyn` to avoid false positives. 3 cases were added to the ui test. https://github.com/rust-lang/rust/blob/0b45675cfcec57f30a3794e1a1e18423aa9cf200/compiler/rustc_hir_analysis/src/hir_ty_lowering/lint.rs#L88-L93 In the first commit, I submitted the test and passed it. In the second commit, I modified the code and we can see the changes in the test. r? compiler
2025-04-02Rollup merge of #139191 - lcnr:interner-opaques, r=compiler-errorsStuart Cook-61/+35
small opaque type/borrowck cleanup pulled out of #138785
2025-04-02Rollup merge of #139102 - Zalathar:no-split, r=oli-obkStuart Cook-346/+304
coverage: Avoid splitting spans during span extraction/refinement This PR removes or simplifies some of the steps involved in extracting coverage-relevant spans from MIR, and preparing them for use in coverage instrumentation metadata. A common theme is that we now try harder to avoid modifying or combining spans in non-trivial ways, because those modifications present the most risk for weird behaviour or ICEs. The main changes are: - When extracting spans from MIR call terminators, try to restrict them to just the function name. - Instead of splitting spans around “holes”, just discard any span that overlaps with a hole. - Instead of splitting macro-invocation spans into two parts, truncate them to just the macro name and subsequent `!`. --- This results in a lot of tiny changes to the spans that end up in coverage metadata, and a few changes to coverage reports. Judging by test snapshots, these changes appear to be quite minor in practice.
2025-04-02Rollup merge of #139060 - ↵Stuart Cook-1/+26
Shourya742:2025-03-28-replace-commit-with-actual-value, r=onur-ozkan replace commit placeholder in vendor status with actual commit closes: #120499 try-job: dist-x86_64-illumos
2025-04-02Rollup merge of #138941 - compiler-errors:receiver-is-dispatchable-bounds, ↵Stuart Cook-26/+61
r=BoxyUwU Do not mix normalized and unnormalized caller bounds when constructing param-env for `receiver_is_dispatchable` See comments in code and in test I added. r? `@BoxyUwU` since you reviewed the last PR, or reassign Fixes #138937
2025-04-02Rollup merge of #138913 - lolbinarycat:rustdoc-js-less-expect-error-part4, ↵Stuart Cook-83/+122
r=notriddle Remove even more instances of @ts-expect-error from search.js r? `@notriddle`
2025-04-02Rollup merge of #138823 - a4lg:riscv-feature-addition-base-i, r=AmanieuStuart Cook-18/+28
rustc_target: RISC-V: add base `I`-related important extensions Of ratified RISC-V features defined, this commit adds extensions satisfying following criteria: * Formerly a part of the `I` extension and splitted thereafter (now ratified as `I` + `Zifencei` + `Zicsr` + `Zicntr` + `Zihpm`) or * Dicoverable from newer versions of the Linux kernel and implemented as a part of `std_detect`'s feature (`Zihintpause`) and * Available on LLVM 18. This is based on [the latest ratified ISA Manuals (version 20240411)](https://lf-riscv.atlassian.net/wiki/spaces/HOME/pages/16154769/RISC-V+Technical+Specifications). LLVM Definitions: * [`Zifencei`](https://github.com/llvm/llvm-project/blob/llvmorg-20.1.0/llvm/lib/Target/RISCV/RISCVFeatures.td#L133-L137) * [`Zicsr`](https://github.com/llvm/llvm-project/blob/llvmorg-20.1.0/llvm/lib/Target/RISCV/RISCVFeatures.td#L116-L120) * [`Zicntr`](https://github.com/llvm/llvm-project/blob/llvmorg-20.1.0/llvm/lib/Target/RISCV/RISCVFeatures.td#L122-L124) * [`Zihpm`](https://github.com/llvm/llvm-project/blob/llvmorg-20.1.0/llvm/lib/Target/RISCV/RISCVFeatures.td#L153-L155) * [`Zihintpause`](https://github.com/llvm/llvm-project/blob/llvmorg-20.1.0/llvm/lib/Target/RISCV/RISCVFeatures.td#L139-L144) Additional (1): One of those, `Zicsr`, is a dependency of many other ISA extensions and this commit adds correct dependencies to `Zicsr`. Additional (2): In RISC-V, `G` is an abbreviation of following extensions: * `I` * `M` * `A` * `F` * `D` * `Zicsr` (although implied by `F`) * `Zifencei` and all RISC-V targets with the `G` abbreviation and targets for Android / VxWorks are updated accordingly. Note: Android will require RVA22 (likely RVA22U64) and some more extensions, which is a superset of RV64GC. For VxWorks, all BSPs currently distributed by Wind River are for boards with RV64GC (this commit also updates `riscv32-wrs-vxworks` though). -------- This is the version 4. `Ztso` in the original proposal is removed on the PR version 2 due to the minimum LLVM version (non-experimental `Ztso` requires LLVM 19 while minimum LLVM version of Rust is 18). This is not back in PR version 3 and 4 after noticing adding `Ztso` is possible by checking host LLVM version because PR version 3 introduces compiler target changes (and adding more extensions would complicate the problems; sorry `Zihintpause`). Version 4: * Fixed some commit messages, * Added Android / VxWorks targets to imply `G` and * Added an implication from `Zve32x` to `Zicsr` (which makes all vector extension subsets to imply `Zicsr`) since #138742 is now merged. Related: * #44839 (`riscv_target_feature`) * #114544 (This PR can be a prerequisite of resolving a part of that tracking issue) * #138742 (Touches the same place and vector extensions depend on `Zicsr`) NOT Related but linked: * #132618 (This PR won't be blocked by this issue since none of those extensions do not change the ABI) `@rustbot` r? `@Amanieu` `@rustbot` label +T-compiler +O-riscv +A-target-feature
2025-04-02Rollup merge of #138003 - sayantn:new-amx, r=AmanieuStuart Cook-0/+40
Add the new `amx` target features and the `movrs` target feature Adds 5 new `amx` target features included in LLVM20. These are guarded under `x86_amx_intrinsics` (#126622) - `amx-avx512` - `amx-fp8` - `amx-movrs` - `amx-tf32` - `amx-transpose` Adds the `movrs` target feature (from #137976). `@rustbot` label O-x86_64 O-x86_32 T-compiler A-target-feature r? `@Amanieu`
2025-04-02Rollup merge of #135295 - eyraudh:master, r=compiler-errorsStuart Cook-9/+38
Check empty SIMD vector in inline asm fixes [#134334](https://github.com/rust-lang/rust/issues/134334)
2025-04-02rustc_target: RISC-V: add base "I"-related important extensionsTsukasa OI-18/+28
Of ratified RISC-V features defined, this commit adds extensions satisfying following criteria: * Formerly a part of the "I" extension and splitted thereafter (now ratified as "I" + "Zifencei" + "Zicsr" + "Zicntr" + "Zihpm") or * Dicoverable from newer versions of the Linux kernel and implemented as a part of std_detect's feature ("Zihintpause"). This is based on the latest ratified ISA Manuals (version 20240411). Additional (1): One of those, "Zicsr", is a dependency of many other ISA extensions and this commit adds correct dependencies to "Zicsr". Additional (2): In RISC-V, "G" is an abbreviation of following extensions: * "I" * "M" * "A" * "F" * "D" * "Zicsr" (although implied by "F") * "Zifencei" and all RISC-V targets with the "G" abbreviation and targets for Android / VxWorks are updated accordingly. Note: Android will require RVA22 (likely RVA22U64) and some more extensions, which is a superset of RV64GC. For VxWorks, all BSPs currently distributed by Wind River are for boards with RV64GC (this commit also updates riscv32-wrs-vxworks though).
2025-04-02Auto merge of #138478 - nnethercote:rm-NtExpr-NtLiteral, r=petrochenkovbors-646/+1032
Remove `NtExpr` and `NtLiteral` The next part of #124141. r? `@petrochenkov`
2025-04-02Move methods from `Map` to `TyCtxt`, part 5.Nicholas Nethercote-208/+175
This eliminates all methods on `Map`. Actually removing `Map` will occur in a follow-up PR.
2025-04-01Auto merge of #139220 - matthiaskrgr:rollup-v1un5wz, r=matthiaskrgrbors-105/+420
Rollup of 8 pull requests Successful merges: - #110406 (rustdoc-json: Add test for #[automatically_derived] attribute) - #138790 (Note potential but private items in show_candidates) - #139002 (Add release notes for 1.86.0) - #139022 (increment depth of nested obligations) - #139129 (Add tests for slice bounds check optimization) - #139188 (PassWrapper: adapt for llvm/llvm-project@94122d58fc77079a291a3d008914…) - #139193 (Feed HIR for by-move coroutine body def, since the inliner tries to read its attrs) - #139202 (Improve docs of ValTreeKind) r? `@ghost` `@rustbot` modify labels: rollup
2025-04-01simplify Interner opaque types APIlcnr-47/+26
2025-04-01call `mir_promoted` inside of `do_mir_borrowck`lcnr-14/+9
2025-04-01move autodiff from EnzymeAD/Enzyme to our rust-lang/Enzyme soft-forkManuel Drehwald-1/+1
2025-04-01Add `opt-level = "s"` for more std symbolication cratesclubby789-0/+3
2025-04-01Update allowed dependenciesclubby789-2/+3
2025-04-01compiler and tools dependenciesclubby789-575/+608
Updating anyhow v1.0.95 -> v1.0.97 Updating basic-toml v0.1.9 -> v0.1.10 Updating bitflags v2.8.0 -> v2.9.0 Updating blake3 v1.5.5 -> v1.8.0 Updating bumpalo v3.16.0 -> v3.17.0 Removing byteorder v1.5.0 Updating bytes v1.9.0 -> v1.10.1 Updating cargo_metadata v0.19.1 -> v0.19.2 Updating chrono v0.4.39 -> v0.4.40 Updating chrono-tz v0.10.1 -> v0.10.3 Updating chrono-tz-build v0.4.0 -> v0.4.1 Updating clap v4.5.26 -> v4.5.35 Updating clap_builder v4.5.26 -> v4.5.35 Updating clap_derive v4.5.24 -> v4.5.32 Updating console v0.15.10 -> v0.15.11 Updating cpufeatures v0.2.16 -> v0.2.17 Updating curl-sys v0.4.78+curl-8.11.0 -> v0.4.80+curl-8.12.1 Updating darling v0.20.10 -> v0.20.11 Updating darling_core v0.20.10 -> v0.20.11 Updating darling_macro v0.20.10 -> v0.20.11 Updating deranged v0.3.11 -> v0.4.0 Updating dissimilar v1.0.9 -> v1.0.10 Updating either v1.13.0 -> v1.15.0 Updating elsa v1.11.0 -> v1.11.2 Updating env_logger v0.11.6 -> v0.11.7 Updating equivalent v1.0.1 -> v1.0.2 Updating flate2 v1.0.35 -> v1.1.0 Updating foldhash v0.1.4 -> v0.1.5 Updating getrandom v0.3.1 -> v0.3.2 Updating globset v0.4.15 -> v0.4.16 Downgrading html5ever v0.29.2 -> v0.29.1 (available: v0.30.0) Updating humantime v2.1.0 -> v2.2.0 Updating iana-time-zone v0.1.61 -> v0.1.63 Updating icu_list_data v1.5.0 -> v1.5.1 Updating icu_locid_transform_data v1.5.0 -> v1.5.1 Updating icu_normalizer_data v1.5.0 -> v1.5.1 Updating icu_properties_data v1.5.0 -> v1.5.1 Updating indexmap v2.7.0 -> v2.8.0 Updating indicatif v0.17.9 -> v0.17.11 Updating inout v0.1.3 -> v0.1.4 Updating itoa v1.0.14 -> v1.0.15 Adding jiff v0.2.5 Adding jiff-static v0.2.5 Updating jobserver v0.1.32 -> v0.1.33 Adding leb128fmt v0.1.0 Updating lexopt v0.3.0 -> v0.3.1 Updating libc v0.2.169 -> v0.2.171 Updating libz-sys v1.1.21 -> v1.1.22 Updating linux-raw-sys v0.4.15 -> v0.9.3 Updating litemap v0.7.4 -> v0.7.5 Updating log v0.4.25 -> v0.4.27 Downgrading markup5ever v0.15.0 -> v0.14.1 Updating miniz_oxide v0.8.3 -> v0.8.5 Updating once_cell v1.20.2 -> v1.21.3 Updating openssl-probe v0.1.5 -> v0.1.6 Updating openssl-sys v0.9.104 -> v0.9.106 Updating pest v2.7.15 -> v2.8.0 Updating pest_derive v2.7.15 -> v2.8.0 Updating pest_generator v2.7.15 -> v2.8.0 Updating pest_meta v2.7.15 -> v2.8.0 Updating pkg-config v0.3.31 -> v0.3.32 Updating portable-atomic v1.10.0 -> v1.11.0 Adding portable-atomic-util v0.2.4 Updating ppv-lite86 v0.2.20 -> v0.2.21 Updating proc-macro2 v1.0.93 -> v1.0.94 Updating quote v1.0.38 -> v1.0.40 Adding r-efi v5.2.0 Updating rand_core v0.9.0 -> v0.9.3 Updating redox_syscall v0.5.8 -> v0.5.10 Updating rustc-stable-hash v0.1.1 -> v0.1.2 Updating rustc_tools_util v0.4.0 -> v0.4.2 Updating rustix v0.38.43 -> v1.0.5 Updating rustversion v1.0.19 -> v1.0.20 Updating ryu v1.0.18 -> v1.0.20 Updating semver v1.0.24 -> v1.0.26 Updating serde v1.0.217 -> v1.0.219 Updating serde_derive v1.0.217 -> v1.0.219 Updating serde_json v1.0.135 -> v1.0.140 Updating similar v2.6.0 -> v2.7.0 Updating smallvec v1.13.2 -> v1.14.0 Updating socket2 v0.5.8 -> v0.5.9 Updating stacker v0.1.18 -> v0.1.20 Updating string_cache v0.8.8 -> v0.8.9 Updating syn v2.0.96 -> v2.0.100 Updating tar v0.4.43 -> v0.4.44 Updating tempfile v3.15.0 -> v3.19.1 Updating thin-vec v0.2.13 -> v0.2.14 Updating thiserror v2.0.11 -> v2.0.12 Updating thiserror-impl v2.0.11 -> v2.0.12 Updating time v0.3.37 -> v0.3.41 Updating time-core v0.1.2 -> v0.1.4 Updating time-macros v0.2.19 -> v0.2.22 Updating tinyvec v1.8.1 -> v1.9.0 Updating tokio v1.43.0 -> v1.44.1 Updating typenum v1.17.0 -> v1.18.0 Updating unicode-ident v1.0.14 -> v1.0.18 Updating uuid v1.12.0 -> v1.16.0 Updating wasi v0.13.3+wasi-0.2.2 -> v0.14.2+wasi-0.2.4 Removing wasm-encoder v0.219.1 Removing wasm-encoder v0.223.0 Adding wasm-encoder v0.219.2 (available: v0.228.0) Adding wasm-encoder v0.223.1 Adding wasm-encoder v0.228.0 Updating wasm-metadata v0.223.0 -> v0.223.1 Removing wasmparser v0.219.1 Removing wasmparser v0.222.0 Removing wasmparser v0.223.0 Adding wasmparser v0.219.2 (available: v0.228.0) Adding wasmparser v0.222.1 Adding wasmparser v0.223.1 Adding wasmparser v0.228.0 Updating wast v223.0.0 -> v228.0.0 Updating wat v1.223.0 -> v1.228.0 Updating windows-core v0.52.0 -> v0.61.0 Adding windows-implement v0.60.0 Updating windows-interface v0.59.0 -> v0.59.1 Adding windows-link v0.1.1 Updating windows-result v0.3.0 -> v0.3.2 Removing windows-strings v0.3.0 Adding windows-strings v0.3.1 Adding windows-strings v0.4.0 Updating wit-bindgen-rt v0.33.0 -> v0.39.0 Updating wit-component v0.223.0 -> v0.223.1 Updating wit-parser v0.223.0 -> v0.223.1 Updating xattr v1.4.0 -> v1.5.0 Removing zerocopy v0.7.35 Removing zerocopy v0.8.14 Adding zerocopy v0.8.24 Removing zerocopy-derive v0.7.35 Removing zerocopy-derive v0.8.14 Adding zerocopy-derive v0.8.24 Updating zerofrom v0.1.5 -> v0.1.6 Updating zerofrom-derive v0.1.5 -> v0.1.6 library dependencies Updating dlmalloc v0.2.7 -> v0.2.8 Updating miniz_oxide v0.8.3 -> v0.8.5 Updating proc-macro2 v1.0.93 -> v1.0.94 Updating quote v1.0.38 -> v1.0.40 Updating rand_core v0.9.0 -> v0.9.3 Updating syn v2.0.98 -> v2.0.100 Updating unicode-ident v1.0.16 -> v1.0.18 Updating zerocopy v0.8.17 -> v0.8.24 Updating zerocopy-derive v0.8.17 -> v0.8.24 rustbook dependencies Updating anyhow v1.0.95 -> v1.0.97 Updating bitflags v2.8.0 -> v2.9.0 Removing byteorder v1.5.0 Updating cc v1.2.10 -> v1.2.17 Updating chrono v0.4.39 -> v0.4.40 Updating clap v4.5.27 -> v4.5.32 Updating clap_builder v4.5.27 -> v4.5.32 Updating clap_complete v4.5.43 -> v4.5.47 Updating clap_derive v4.5.24 -> v4.5.32 Updating env_logger v0.11.6 -> v0.11.7 Updating equivalent v1.0.1 -> v1.0.2 Updating flate2 v1.0.35 -> v1.1.0 Updating getrandom v0.2.15 -> v0.3.2 Updating handlebars v6.3.0 -> v6.3.2 Removing humantime v2.1.0 Updating indexmap v2.7.1 -> v2.8.0 Updating itoa v1.0.14 -> v1.0.15 Adding jiff v0.2.5 Adding jiff-static v0.2.5 Updating libc v0.2.169 -> v0.2.171 Updating linux-raw-sys v0.4.15 -> v0.9.3 Updating litemap v0.7.4 -> v0.7.5 Updating log v0.4.25 -> v0.4.26 Updating mdbook-i18n-helpers v0.3.5 -> v0.3.6 Updating miniz_oxide v0.8.3 -> v0.8.5 Updating once_cell v1.20.2 -> v1.21.1 Removing phf_generator v0.10.0 Removing phf_shared v0.10.0 Updating pkg-config v0.3.31 -> v0.3.32 Adding portable-atomic v1.11.0 Adding portable-atomic-util v0.2.4 Removing ppv-lite86 v0.2.20 Updating proc-macro2 v1.0.93 -> v1.0.94 Removing pulldown-cmark v0.11.3 Updating pulldown-cmark-to-cmark v15.0.1 -> v20.0.1 Updating quote v1.0.38 -> v1.0.40 Adding r-efi v5.2.0 Removing rand_chacha v0.3.1 Updating redox_syscall v0.5.8 -> v0.5.10 Updating rustix v0.38.44 -> v1.0.3 Updating rustversion v1.0.19 -> v1.0.20 Updating ryu v1.0.19 -> v1.0.20 Updating semver v1.0.25 -> v1.0.26 Updating serde v1.0.217 -> v1.0.219 Updating serde_derive v1.0.217 -> v1.0.219 Updating serde_json v1.0.138 -> v1.0.140 Removing siphasher v0.3.11 Updating smallvec v1.13.2 -> v1.14.0 Updating string_cache v0.8.7 -> v0.8.8 Updating string_cache_codegen v0.5.2 -> v0.5.4 Updating syn v2.0.96 -> v2.0.100 Updating tempfile v3.15.0 -> v3.19.1 Updating terminal_size v0.4.1 -> v0.4.2 Updating textwrap v0.16.1 -> v0.16.2 Updating thiserror v2.0.11 -> v2.0.12 Updating thiserror-impl v2.0.11 -> v2.0.12 Updating toml v0.8.19 -> v0.8.20 Updating toml_edit v0.22.22 -> v0.22.24 Updating typenum v1.17.0 -> v1.18.0 Updating unicode-ident v1.0.16 -> v1.0.18 Updating wasi v0.11.0+wasi-snapshot-preview1 -> v0.14.2+wasi-0.2.4 Adding windows-link v0.1.1 Updating winnow v0.6.25 -> v0.7.4 Adding wit-bindgen-rt v0.39.0 Removing zerocopy v0.7.35 Removing zerocopy-derive v0.7.35 Updating zerofrom v0.1.5 -> v0.1.6 Updating zerofrom-derive v0.1.5 -> v0.1.6
2025-04-02Fix problem causing `rusqlite` compilation to OOM.Nicholas Nethercote-1/+136
This makes the expression re-parsing more like how it's originally done in `parse_nonterminal`.
2025-04-02Fix a problem with metavars and inner attributes.Nicholas Nethercote-22/+53
2025-04-02Remove `Token::uninterpolated_span`.Nicholas Nethercote-44/+48
In favour of the similar method on `Parser`, which works on things other than identifiers and lifetimes.
2025-04-02Remove `NtExpr` and `NtLiteral`.Nicholas Nethercote-585/+801
Notes about tests: - tests/ui/rfcs/rfc-2294-if-let-guard/feature-gate.rs: some messages are now duplicated due to repeated parsing. - tests/ui/rfcs/rfc-2497-if-let-chains/disallowed-positions.rs: ditto. - `tests/ui/proc-macro/macro-rules-derive-cfg.rs`: the diff looks large but the only difference is the insertion of a single invisible-delimited group around a metavar. - `tests/ui/attributes/nonterminal-expansion.rs`: a slight span degradation, somehow related to the recent massive attr parsing rewrite (#135726). I couldn't work out exactly what is going wrong, but I don't think it's worth holding things up for a single slightly suboptimal error message.
2025-04-01Rollup merge of #139202 - bjorn3:improve_comment, r=jieyouxuMatthias Krüger-1/+1
Improve docs of ValTreeKind
2025-04-01Rollup merge of #139193 - compiler-errors:inline-synthetic, r=eholkMatthias Krüger-12/+30
Feed HIR for by-move coroutine body def, since the inliner tries to read its attrs See the comments in the test. I'm surprised that nobody found this[^1] (edit: nvm haha), but you have to go out of your way to construct the by-move body and then inline it w/ a poll call, so I guess the inliner just never really gets into this situation before. Fixes #134335 r? oli-obk [^1]: Well, ````@eholk```` found this when working on the `iter! {}` macro, since it more dramatically affects those.
2025-04-01Rollup merge of #139188 - durin42:llvm-21-LintPass, r=dianqkMatthias Krüger-6/+11
PassWrapper: adapt for llvm/llvm-project@94122d58fc77079a291a3d008914… …006cb509d9db We also have to remove the LLVM argument in cast-target-abi.rs for LLVM 21. I'm not really sure what the best approach here is since that test already uses revisions. We could also fork the test into a copy for LLVM 19-20 and another for LLVM 21, but what I did for now was drop the lint-abort-on-error flag to LLVM figuring that some coverage was better than none, but I'm happy to change this if that was a bad direction. r? dianqk ````@rustbot```` label llvm-main
2025-04-01Rollup merge of #139129 - ↵Matthias Krüger-0/+37
reez12g:add-tests-for-slice-bounds-check-optimization, r=fee1-dead Add tests for slice bounds check optimization Closes https://github.com/rust-lang/rust/issues/134466
2025-04-01Rollup merge of #139022 - lcnr:incr-obligation-depth, r=oli-obkMatthias Krüger-72/+70
increment depth of nested obligations properly fixes the root cause of #109268. While we didn't get hangs here before, I ended up encountering its root cause again with #138785. r? types
2025-04-01Rollup merge of #139002 - cuviper:relnotes-1.86.0, r=BoxyUwUMatthias Krüger-0/+123
Add release notes for 1.86.0 Closes #138795 (the draft) cc ````@rust-lang/release```` ````@rustbot```` ping relnotes-interest-group
2025-04-01Rollup merge of #138790 - xizheyin:issue-138626, r=compiler-errorsMatthias Krüger-14/+135
Note potential but private items in show_candidates Closes #138626 . We should add potential private items to give ample hints. And for the other seemingly false positive ` pub use crate::one::Foo;` should be kept because we don't know if the user wants to import other module's items or not, and therefore should be given the full option to do so. r? compiler
2025-04-01Rollup merge of #110406 - aDotInTheVoid:rdj-derived-impl-attr, r=GuillaumeGomezMatthias Krüger-0/+13
rustdoc-json: Add test for #[automatically_derived] attribute ~~Will fail CI due to https://github.com/freestrings/jsonpath/issues/91, but I wrote the test and don't want to forget it.~~ ~~We should look into fixing the freestrings impl, or moving to a different one, so we can test things like this. [Zulip Disussion](https://rust-lang.zulipchat.com/#narrow/stream/266220-rustdoc/topic/jsonpath-plus.20integration)~~ FIXED!!! By #138763 r? ````@ghost```` ````@rustbot```` blocked
2025-04-01Auto merge of #138928 - ChrisDenton:fix-uwp, r=tgross35bors-1/+1
Fix UWP reparse point check Fixes #138921