about summary refs log tree commit diff
AgeCommit message (Collapse)AuthorLines
2025-05-22Remove rust-analyzer.vs from other editorsOli Scherer-24/+0
2025-05-22Merge pull request #19842 from Veykril/push-zunlmrzpnrzkLukas Wirth-1/+1
minor: Support `transmute_unchecked` intrinsic for mir-eval
2025-05-22Support `transmute_unchecked` intrinsic for mir-evalLukas Wirth-1/+1
2025-05-22Merge pull request #19824 from ChayimFriedman2/lints-againLukas Wirth-164/+60
fix: Fix cache problems with lints level
2025-05-21Merge pull request #19839 from ChayimFriedman2/inlay-hints-attrLukas Wirth-5/+15
fix: Correctly set the span of the proc_macro crate's Group delimiters
2025-05-21Merge pull request #19840 from rust-lang/davidbarsky/fix-integrated-benchmarksChayim Refael Friedman-8/+12
internal: fix `integrated_benchmarks` to make actual edits
2025-05-21internal: fix `integrated_benchmarks` to make actual editsDavid Barsky-8/+12
2025-05-21Correctly set the span of the proc_macro crate's Group delimitersChayim Refael Friedman-5/+15
Previously only the open delimiter's span was set, and this caused... weird problems.
2025-05-20Merge pull request #19826 from lnicola/sync-from-rustLaurențiu Nicola-25334/+43255
minor: Sync from downstream
2025-05-20Bump rustc cratesLaurențiu Nicola-22/+29
2025-05-20Merge from rust-lang/rustLaurențiu Nicola-25313/+43227
2025-05-20Preparing for merge from rust-lang/rustLaurențiu Nicola-1/+1
2025-05-20Auto merge of #141270 - Zalathar:rollup-jd1y1f6, r=Zalatharbors-56/+2
Rollup of 5 pull requests Successful merges: - #141211 (Replace `try_reserve_exact` with `try_with_capacity` in `std::fs::read`) - #141257 (trim cache module in utils bootstrap) - #141259 (Update books) - #141261 (current_dll_path: fix mistake in assertion message) - #141262 (Properly remove Noratrieb from review rotation) r? `@ghost` `@rustbot` modify labels: rollup
2025-05-20Rollup merge of #141262 - Noratrieb:Noratrieb-patch-4, r=NoratriebStuart Cook-3/+0
Properly remove Noratrieb from review rotation I've put myself on vacation a while ago, but really I just want to remove myself from the queue because I couldn't get around to reviewing all the PRs, I'm still here and available :3.
2025-05-20Rollup merge of #141261 - RalfJung:current_dll_path, r=NoratriebStuart Cook-1/+1
current_dll_path: fix mistake in assertion message Follow-up to https://github.com/rust-lang/rust/pull/141239 r? `@Noratrieb`
2025-05-20Rollup merge of #141259 - rustbot:docs-update, r=ehussStuart Cook-0/+0
Update books ## rust-lang/book 4 commits in d33916341d480caede1d0ae57cbeae23aab23e88..230c68bc1e08f5f3228384a28cc228c81dfbd10d 2025-05-19 14:25:14 UTC to 2025-05-08 21:28:56 UTC - Chapter 6 from tech review (rust-lang/book#4370) - Chapter 5 from tech review (rust-lang/book#4359) - Chapter 4 from tech review (rust-lang/book#4358) - Chapter 3 from tech review (rust-lang/book#4353) ## rust-lang/reference 12 commits in 387392674d74656f7cb437c05a96f0c52ea8e601..acd0231ebc74849f6a8907b5e646ce86721aad76 2025-05-19 15:41:22 UTC to 2025-05-06 21:36:01 UTC - Add doc for avx512 target features (rust-lang/reference#1778) - Parse grammar without regexes (rust-lang/reference#1827) - Parse optionals and repeats without regexes (rust-lang/reference#1826) - Fix grammar for `RangePatternBound` regarding literals (rust-lang/reference#1825) - Fix grammar for `LiteralPattern` regarding `-` (rust-lang/reference#1824) - Doc: Add the LoongArch stabilized target features (rust-lang/reference#1707) - Fix naked em-dash (rust-lang/reference#1820) - Add missing attribute for statement macros (rust-lang/reference#1819) - Make linked rules are clicked, highlight the color (rust-lang/reference#1817) - Use the reference grammar for inline assembly (rust-lang/reference#1807) - Fix typo in introduction (rust-lang/reference#1810) - Add an example admonition (rust-lang/reference#1812) ## rust-lang/rust-by-example 2 commits in 8a8918c698534547fa8a1a693cb3e7277f0bfb2f..c9d151f9147c4808c77f0375ba3fa5d54443cb9e 2025-05-13 17:49:05 UTC to 2025-05-13 17:48:43 UTC - fix(docs): standardize on `no_run` attribute for documentation examples (rust-lang/rust-by-example#1929) - Fix typo in Japanese translation (rust-lang/rust-by-example#1928)
2025-05-20Rollup merge of #141257 - Shourya742:2025-05-19-trim-cache-module, r=onur-ozkanStuart Cook-50/+0
trim cache module in utils bootstrap We don't use other variants of Interner in bootstrap, so this PR streamlines the bootstrap cache utils module. r? `@onur-ozkan`
2025-05-20Rollup merge of #141211 - fluiderson:dev, r=thomccStuart Cook-2/+1
Replace `try_reserve_exact` with `try_with_capacity` in `std::fs::read` This change restores the previous behavior prior to #117925. That PR was made to handle OOM errors that turn into a panic with `Vec::with_capacity`. `try_reserve_exact` was used for that since there was no `try_with_capacity` method at the time. It was added later in #120504. I think it'd a better fit here.
2025-05-19Auto merge of #138023 - melrief:97227_impl_Seek_for_Take, r=tgross35bors-1/+173
Add `std::io::Seek` instance for `std::io::Take` Library tracking issue [#97227](https://github.com/rust-lang/rust/issues/97227). ACP: https://github.com/rust-lang/libs-team/issues/555 1. add a `len` field to `Take` to keep track of the original number of bytes that `Take` could read 2. add a `position()` method to return the current position of the cursor inside `Take` 3. implement `std::io::Seek` for `std::io::Take` Closes: https://github.com/rust-lang/libs-team/issues/555
2025-05-19Properly remove Noratrieb from review rotation nora-3/+0
I've put myself on vacation a while ago, but really I just want to remove myself from the queue because I couldn't get around to reviewing all the PRs, I'm still here and available :3.
2025-05-19current_dll_path: fix mistake in assertion messageRalf Jung-1/+1
2025-05-19Update booksrustbot-0/+0
2025-05-19trim cache module in utilsbit-aloo-50/+0
2025-05-19Auto merge of #141255 - matthiaskrgr:rollup-ravsgen, r=matthiaskrgrbors-56/+182
Rollup of 6 pull requests Successful merges: - #131200 (Handle `rustc_query_system` cases of `rustc::potential_query_instability` lint) - #141244 (windows: document that we rely on an undocumented property of GetUserProfileDirectoryW) - #141247 (skip compiler tools sanity checks on certain commands) - #141248 (fix data race in ReentrantLock fallback for targets without 64bit atomics) - #141249 (introduce common macro for `MutVisitor` and `Visitor` to dedup code) - #141253 (Warning added when dependency crate has async drop types, and the feature is disabled) r? `@ghost` `@rustbot` modify labels: rollup
2025-05-19Rollup merge of #141253 - ↵Matthias Krüger-1/+55
azhogin:azhogin/async-drop-feature-inconsistency-warning, r=oli-obk Warning added when dependency crate has async drop types, and the feature is disabled In continue of https://github.com/rust-lang/rust/pull/141031. When dependency crate has non-empty `adt_async_destructor` table in metadata, and `async_drop` feature is disabled for local crate, warning will be emitted. Test `dependency-dropped` has two revisions - with and without feature enabled. With feature enabled, async drop for dropee is executed ("Async drop" printed). Without the feature enabled, sync drop is executed ("Sync drop" printed) and warning is emitted. Warning example: ``` warning: found async drop types in dependecy `async_drop_dep`, but async_drop feature is disabled for `dependency_dropped` --> $DIR/dependency-dropped.rs:7:1 | LL | #![cfg_attr(with_feature, feature(async_drop))] | ^ | = help: if async drop type will be dropped in a crate without `feature(async_drop)`, sync Drop will be used ```
2025-05-19Rollup merge of #141249 - fee1-dead-contrib:push-mwxxsvrsotvs, r=oli-obkMatthias Krüger-49/+73
introduce common macro for `MutVisitor` and `Visitor` to dedup code helps with #127615. I can do everything in one go but I figured it might be worth it to open a PR first for vibeck. r? oli-obk
2025-05-19Rollup merge of #141248 - RalfJung:reentrant-lock-race, r=joboetMatthias Krüger-2/+26
fix data race in ReentrantLock fallback for targets without 64bit atomics See [Zulip](https://rust-lang.zulipchat.com/#narrow/channel/269128-miri/topic/reentrant.20lock.20failure.20on.20musl) for details: the address used to identify a thread might get lazily allocated inside `tls_addr()`, so if we call that *after* doing the `tls_addr.load()` it is too late to establish synchronization with prior threads that used the same address -- the `load()` thus races with the `store()` by that prior thread, and might hence see outdated values, and then the entire logic breaks down. r? `@joboet`
2025-05-19Rollup merge of #141247 - onur-ozkan:141246, r=albertlarsan68Matthias Krüger-3/+17
skip compiler tools sanity checks on certain commands Closes #141246
2025-05-19Rollup merge of #141244 - RalfJung:GetUserProfileDirectoryW, r=ChrisDentonMatthias Krüger-0/+2
windows: document that we rely on an undocumented property of GetUserProfileDirectoryW r? `@ChrisDenton` Also see https://github.com/rust-lang/miri/pull/4332
2025-05-19Rollup merge of #131200 - ↵Matthias Krüger-1/+9
ismailarilik:handle-potential-query-instability-lint-for-rustc-query_system, r=fee1-dead Handle `rustc_query_system` cases of `rustc::potential_query_instability` lint This PR removes `#![allow(rustc::potential_query_instability)]` line from [`compiler/rustc_query_system/src/lib.rs`](https://github.com/rust-lang/rust/blob/master/compiler/rustc_query_system/src/lib.rs#L2) and converts `FxHash{Map,Set}` types into `FxIndex{Map,Set}` to suppress lint errors. A somewhat tracking issue: https://github.com/rust-lang/rust/issues/84447 r? `@compiler-errors`
2025-05-19Add `std::io::Seek` instance for `std::io::Take`Mario Pastorelli-1/+173
2025-05-19windows: document that we rely on an undocumented property of ↵Ralf Jung-0/+2
GetUserProfileDirectoryW
2025-05-19Warning added when dependency crate has async drop types, and the feature is ↵Andrew Zhogin-1/+55
disabled
2025-05-19add this to Miri's trophy caseRalf Jung-0/+1
2025-05-19fix data race in ReentrantLock fallback for targets without 64bit atomicsRalf Jung-2/+25
2025-05-19introduce common macro for `MutVisitor` and `Visitor` to dedup codeDeadbeef-49/+73
2025-05-19Auto merge of #141243 - Zalathar:rollup-x5xt80l, r=Zalatharbors-540/+563
Rollup of 5 pull requests Successful merges: - #140847 (coverage: Detect unused local file IDs to avoid an LLVM assertion) - #141117 (opt-dist: fix deprecated BOLT -icf=1 option) - #141225 (more ice tests) - #141239 (dladdr cannot leave dli_fname to be null) - #141242 (in `tests/ui/asm/aarch64/parse-error.rs`, only test cases specific to that target) r? `@ghost` `@rustbot` modify labels: rollup
2025-05-19skip compiler tools sanity checks on certain commandsonur-ozkan-3/+17
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2025-05-19Fix cache problems with lints levelChayim Refael Friedman-164/+60
By removing the cache.
2025-05-19Merge pull request #19822 from Veykril/push-mzzluystvwlsLukas Wirth-49/+1
minor: Remote dangling file
2025-05-19Rollup merge of #141242 - folkertdev:aarch64-asm-parse-errors, r=AmanieuStuart Cook-470/+7
in `tests/ui/asm/aarch64/parse-error.rs`, only test cases specific to that target this is more in line with the x86 parse error tests at https://github.com/rust-lang/rust/blob/master/tests/ui/asm/x86_64/x86_64_parse_error.rs. We could at this point use minicore so that these tests run no matter the host target? `tests/ui/asm/aarch64/parse-error.rs` was mostly a copy of https://github.com/rust-lang/rust/blob/master/tests/ui/asm/parse-error.rs, though a bit out of date. The only aarch64-specific tests are those that talk about register names. Here is a diff between those two files: ```diff --- <unnamed> +++ <unnamed> `@@` -1,4 +1,4 `@@` -//@ needs-asm-support +//@ only-aarch64 use std::arch::{asm, global_asm}; `@@` -36,36 +36,12 `@@` //~^ ERROR expected one of asm!("{}", options(), const foo); //~^ ERROR attempt to use a non-constant value in a constant - - // test that asm!'s clobber_abi doesn't accept non-string literals - // see also https://github.com/rust-lang/rust/issues/112635 - asm!("", clobber_abi()); - //~^ ERROR at least one abi must be provided asm!("", clobber_abi(foo)); //~^ ERROR expected string literal asm!("", clobber_abi("C" foo)); //~^ ERROR expected one of `)` or `,`, found `foo` asm!("", clobber_abi("C", foo)); //~^ ERROR expected string literal - asm!("", clobber_abi(1)); - //~^ ERROR expected string literal - asm!("", clobber_abi(())); - //~^ ERROR expected string literal - asm!("", clobber_abi(uwu)); - //~^ ERROR expected string literal - asm!("", clobber_abi({})); - //~^ ERROR expected string literal - asm!("", clobber_abi(loop {})); - //~^ ERROR expected string literal - asm!("", clobber_abi(if)); - //~^ ERROR expected string literal - asm!("", clobber_abi(do)); - //~^ ERROR expected string literal - asm!("", clobber_abi(<)); - //~^ ERROR expected string literal - asm!("", clobber_abi(.)); - //~^ ERROR expected string literal - asm!("{}", clobber_abi("C"), const foo); //~^ ERROR attempt to use a non-constant value in a constant asm!("", options(), clobber_abi("C")); `@@` -76,7 +52,15 `@@` //~^^ ERROR argument never used //~^^^ ERROR attempt to use a non-constant value in a constant //~^^^^ ERROR attempt to use a non-constant value in a constant - + asm!("", a = in("x0") foo); + //~^ ERROR explicit register arguments cannot have names + asm!("{a}", in("x0") foo, a = const bar); + //~^ ERROR attempt to use a non-constant value in a constant + asm!("{a}", in("x0") foo, a = const bar); + //~^ ERROR attempt to use a non-constant value in a constant + asm!("{1}", in("x0") foo, const bar); + //~^ ERROR positional arguments cannot follow named arguments or explicit register arguments + //~^^ ERROR attempt to use a non-constant value in a constant asm!("", options(), ""); //~^ ERROR expected one of asm!("{}", in(reg) foo, "{}", out(reg) foo); `@@` -109,13 +93,11 `@@` global_asm!("{}", const(reg) FOO); //~^ ERROR expected one of global_asm!("", options(FOO)); -//~^ ERROR expected one of `)`, `att_syntax`, or `raw`, found `FOO` -global_asm!("", options(FOO,)); -//~^ ERROR expected one of `)`, `att_syntax`, or `raw`, found `FOO` +//~^ ERROR expected one of global_asm!("", options(nomem FOO)); -//~^ ERROR expected one of `)` or `,`, found `FOO` +//~^ ERROR expected one of global_asm!("", options(nomem, FOO)); -//~^ ERROR expected one of `)`, `att_syntax`, or `raw`, found `FOO` +//~^ ERROR expected one of global_asm!("{}", options(), const FOO); global_asm!("", clobber_abi(FOO)); //~^ ERROR expected string literal `@@` -129,8 +111,6 `@@` //~^ ERROR `clobber_abi` cannot be used with `global_asm!` global_asm!("{}", options(), clobber_abi("C"), const FOO); //~^ ERROR `clobber_abi` cannot be used with `global_asm!` -global_asm!("", clobber_abi("C"), clobber_abi("C")); -//~^ ERROR `clobber_abi` cannot be used with `global_asm!` global_asm!("{a}", a = const FOO, a = const BAR); //~^ ERROR duplicate argument named `a` //~^^ ERROR argument never used `@@` -142,16 +122,3 `@@` //~^ ERROR asm template must be a string literal global_asm!("{1}", format!("{{{}}}", 0), const FOO, const BAR); //~^ ERROR asm template must be a string literal - -global_asm!("{}", in(reg)); -//~^ ERROR the `in` operand cannot be used with `global_asm!` -global_asm!("{}", out(reg)); -//~^ ERROR the `out` operand cannot be used with `global_asm!` -global_asm!("{}", lateout(reg)); -//~^ ERROR the `lateout` operand cannot be used with `global_asm!` -global_asm!("{}", inout(reg)); -//~^ ERROR the `inout` operand cannot be used with `global_asm!` -global_asm!("{}", inlateout(reg)); -//~^ ERROR the `inlateout` operand cannot be used with `global_asm!` -global_asm!("{}", label(reg)); -//~^ ERROR the `label` operand cannot be used with `global_asm!` ```
2025-05-19Rollup merge of #141239 - RalfJung:dladdr-fname, r=NoratriebStuart Cook-7/+5
dladdr cannot leave dli_fname to be null There are two places in the repo calling `dladdr`, and they are inconsistent wrt their assumption of whether the `dli_fname` field can be null. Let's make them consistent. I see nothing in the docs that allows it to be null, but just to be on the safe side let's make this an assertion so hopefully we get a report if that ever happens.
2025-05-19Rollup merge of #141225 - matthiaskrgr:crashes_may2015, r=compiler-errorsStuart Cook-0/+396
more ice tests try-job: aarch64-apple try-job: x86_64-msvc-1 try-job: x86_64-gnu try-job: dist-i586-gnu-i586-i686-musl try-job: test-various
2025-05-19Rollup merge of #141117 - klensy:opt-dist-icf, r=KobzolStuart Cook-1/+1
opt-dist: fix deprecated BOLT -icf=1 option Replaced deprecated `-icf=1` BOLT option. Spotted in recent CI run (https://github.com/rust-lang-ci/rust/actions/runs/15080898417/job/42397253162): ``` BOLT-WARNING: specifying numeric value "1" for option -icf is deprecated ``` Change was added in https://github.com/llvm/llvm-project/pull/116275 Btw, now there also exist new option `-icf=safe`, will be nice to try it too.
2025-05-19Rollup merge of #140847 - Zalathar:unused-local-file, r=SparrowLiiStuart Cook-62/+154
coverage: Detect unused local file IDs to avoid an LLVM assertion Each function's coverage metadata contains a *local file table* that maps local file IDs (used by the function's mapping regions) to global file IDs (shared by all functions in the same CGU). LLVM requires all local file IDs to have at least one mapping region, and has an assertion that will fail if it detects a local file ID with no regions. To make sure that assertion doesn't fire, we need to detect and skip functions whose metadata would trigger it. (This can't actually happen yet, because currently all of a function's spans must belong to the same file and expansion. But this will be an important edge case when adding expansion region support.)
2025-05-19Remote dangling fileLukas Wirth-49/+1
2025-05-19Merge pull request #19809 from flodiebold/push-txyotwlvvklnLukas Wirth-1/+17
internal: Catch panics in inference in analysis-stats
2025-05-19Auto merge of #140754 - dpaoliello:cygwinpath, r=marcoienibors-3/+3
[win][CI] Convert paths to Windows format before adding to PATH While trying to get the `aarch64-msvc` build working correctly (#140136), I noticed that the `PATH` observed during the Rust steps of the build on Windows builds had some entries still in MinGW format, which means that Windows would not be able to use them correctly: From <https://github.com/rust-lang/rust/actions/runs/14606167901/job/40975555680#step:28:192> note the path for `ninja` and `sccache`. ``` PATH = Some(C:\a\rust\rust\src\ci\citool\../../../build/citool\debug\deps;C:\a\rust\rust\src\ci\citool\../../../build/citool\debug;C:\Users\runneradmin\.rustup\toolchains\stable-aarch64-pc-windows-msvc\lib\rustlib\aarch64-pc-windows-msvc\lib;C:\Program Files\Git\clangarm64/bin;C:\Program Files\Git\usr\bin;C:\Users\runneradmin\bin;/c/a/rust/rust/ninja;/c/a/rust/rust/sccache;C:\Users\runneradmin/.cargo/bin;C:\aliyun-cli;C:\vcpkg;C:\Program Files (x86)\NSIS\;C:\Program Files\Mercurial\;C:\hostedtoolcache\windows\stack\3.3.1\x64;C:\mingw64\bin;C:\Program Files\dotnet;C:\Program Files\MySQL\MySQL Server 8.0\bin;C:\Program Files (x86)\R\R-4.4.2\bin\x64;C:\SeleniumWebDrivers\GeckoDriver;C:\SeleniumWebDrivers\EdgeDriver\;C:\SeleniumWebDrivers\ChromeDriver;C:\Program Files (x86)\sbt\bin;C:\Program Files (x86)\GitHub CLI;C:\Program Files\Git\bin;C:\Program Files (x86)\pipx_bin;C:\npm\prefix;C:\hostedtoolcache\windows\go\1.21.13\arm64\bin;C:\hostedtoolcache\windows\Python\3.9.13\x64\Scripts;C:\hostedtoolcache\windows\Python\3.9.13\x64;C:\hostedtoolcache\windows\Ruby\3.0.7\x64\bin;C:\Program Files\OpenSSL\bin;C:\tools\kotlinc\bin;C:\hostedtoolcache\windows\Java_Temurin-Hotspot_jdk\8.0.442-6\x64\bin;C:\Program Files (x86)\ImageMagick-7.1.1-Q16-HDRI;C:\Program Files\Microsoft SDKs\Azure\CLI2\wbin;C:\ProgramData\kind;C:\ProgramData\Chocolatey\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files\PowerShell\7\;C:\Program Files\Microsoft\Web Platform Installer\;C:\Program Files\Microsoft SQL Server\Client SDK\ODBC\170\Tools\Binn\;C:\Program Files\Microsoft SQL Server\150\Tools\Binn\;C:\Program Files\dotnet\;C:\Program Files\Microsoft SQL Server\130\DTS\Binn\;C:\Program Files\Microsoft SQL Server\140\DTS\Binn\;C:\Program Files\Microsoft SQL Server\150\DTS\Binn\;C:\Program Files\Microsoft SQL Server\160\DTS\Binn\;C:\Strawberry\c\bin;C:\Strawberry\perl\site\bin;C:\Strawberry\perl\bin;C:\ProgramData\chocolatey\lib\pulumi\tools\Pulumi\bin;C:\Program Files\CMake\bin;C:\ProgramData\chocolatey\lib\maven\apache-maven-3.9.9\bin;C:\Program Files\nodejs\;C:\Program Files\Git\cmd;C:\Program Files\Git\clangarm64\bin;C:\Program Files\Git\usr\bin;C:\Program Files\GitHub CLI\;c:\tools\php;C:\Program Files (x86)\sbt\bin;C:\Program Files\Amazon\AWSCLIV2\;C:\Program Files\Amazon\SessionManagerPlugin\bin\;C:\Program Files\Amazon\AWSSAMCLI\bin\;C:\Program Files\Microsoft SQL Server\130\Tools\Binn\;C:\Program Files\LLVM\bin;C:\Users\runneradmin\.dotnet\tools;C:\Users\runneradmin\AppData\Local\Microsoft\WindowsApps) ``` The fix for this is to use `cygpath` to convert from the Cygwin format back to native Windows format before adding to the `PATH`. --- try-job: dist-aarch64-msvc try-job: x86_64-msvc-1 try-job: x86_64-msvc-2 try-job: i686-msvc-1 try-job: i686-msvc-2 try-job: x86_64-mingw-1 try-job: x86_64-mingw-2 try-job: dist-i686-mingw
2025-05-19in aarch64 asm parse error tests, only test cases specific to that targetFolkert de Vries-470/+7
this is more in line with the x86 parse error tests. The cross-platform tests were more complete anyway
2025-05-19Merge pull request #19814 from Veykril/lw-sxquntxksovsLukas Wirth-9/+54
Debounce workspace fetching for workspace structure changes