about summary refs log tree commit diff
path: root/src
AgeCommit message (Collapse)AuthorLines
2025-09-08Merge pull request #4566 from Patrick-6/miri-genmc-rmwRalf Jung-207/+1478
Add more features for GenMC mode (RMW, fences, new printing options)
2025-09-08Merge pull request #20620 from A4-Tacks/let-else-completionLaurențiu Nicola-17/+220
fix: add `else` keyword completion after `let` statements
2025-09-08print proper error when using unsupported synchronization primitive with GenMCRalf Jung-76/+52
2025-09-08Merge pull request #20626 from A4-Tacks/make-record-wsLaurențiu Nicola-36/+39
Improve make::struct_ field_list whitespace
2025-09-08readabilityTshepang Mbambo-1/+1
2025-09-08fix markupTshepang Mbambo-0/+3
2025-09-08sembrTshepang Mbambo-5/+11
2025-09-08Merge pull request #2573 from rust-lang/tshepang/make-more-clearTshepang Mbambo-2/+4
clarify typo pr guidance
2025-09-08remove confusing parts of sentenceTshepang Mbambo-2/+1
I can guess what this meant, but decided to just keep it simple
2025-09-08Merge ref '2f3f27bf79ec' from rust-lang/rustThe rustc-josh-sync Cronjob Bot-5449/+12169
Pull recent changes from https://github.com/rust-lang/rust via Josh. Upstream ref: 2f3f27bf79ec147fec9d2e7980605307a74067f4 Filtered ref: 82a5eafbafdb98eae68193600732388ae4135756 Upstream diff: https://github.com/rust-lang/rust/compare/a1dbb443527bd126452875eb5d5860c1d001d761...2f3f27bf79ec147fec9d2e7980605307a74067f4 This merge was created using https://github.com/rust-lang/josh-sync.
2025-09-08Prepare for merging from rust-lang/rustThe rustc-josh-sync Cronjob Bot-1/+1
This updates the rust-version file to 2f3f27bf79ec147fec9d2e7980605307a74067f4.
2025-09-07Implement more features for GenMC modePatrick-6-136/+1431
- Support for atomic fences. - Support for atomic read-modify-write (RMW). - Add tests using RMW and fences. - Add options: - to disable weak memory effects in GenMC mode. - to print GenMC execution graphs. - to print GenMC output message. - Fix GenMC full rebuild issue and run configure step when commit changes. - Do cleanup. Co-authored-by: Ralf Jung <post@ralfj.de>
2025-09-07Rollup merge of #146170 - kumarUjjawal:master, r=Mark-SimulacrumMatthias Krüger-2/+29
fix: offline rustdoc html missing favicon As discussed in the rust-lang/rust#146149 the doc was missing the favicon icon when build locally and viewed on a browser. I changed the relative path and also now we explicitly copy both SVG and PNG. <img width="1132" height="425" alt="Screenshot 2025-09-03 at 11 57 46 PM" src="https://github.com/user-attachments/assets/062cbb08-04ec-4d88-a43a-710fb6190f82" />
2025-09-07Improve make::struct_ field_list whitespaceA4-Tacks-36/+39
Example --- **Before this PR**: ```rust struct Variant{ field: u32 } ``` **After this PR**: ```rust struct Variant { field: u32 } ```
2025-09-07optimization: Don't include ASCII characters in Unicode tablesKarl Meakin-0/+5
The ASCII subset of Unicode is fixed and will never change, so we don't need to generate tables for it with every new Unicode version. This saves a few bytes of static data and speeds up `char::is_control` and `char::is_grapheme_extended` on ASCII inputs. Since the table lookup functions exported from the `unicode` module will give nonsensical errors on ASCII input (and in fact will panic in debug mode), I had to add some private wrapper methods to `char` which check for ASCII-ness first.
2025-09-07Auto merge of #146216 - ↵bors-278/+489
LorrensP-2158466:miri-float-nondet-foreign-items-take2, r=RalfJung Miri: non-deterministic floating point operations in foreign_items Take 2 of rust-lang/rust#143906. The last 2 commits are what changed compared to the original pr. Verified the tests using (fish shell): ```fish env MIRIFLAGS="-Zmiri-max-extra-rounding-error -Zmiri-many-seeds" ./x miri --no-fail-fast std core coretests -- f32 f64 ``` r? `@RalfJung`
2025-09-06Rollup merge of #146200 - GuillaumeGomez:simplify-rustdoc-gui-tests, ↵Matthias Krüger-418/+13
r=lolbinarycat Simplify rustdoc-gui tester by calling directly browser-ui-test The output and handling of `browser-ui-test` is now mostly the same as we did manually, so no need to keep our wrapper anymore. Lot of code removed! \o/ r? `@lolbinarycat`
2025-09-06Change stdlib float tests to account for miri nondet floats.LorrensP-2158466-4/+3
2025-09-06Implement nondet behaviour and change/add tests.LorrensP-2158466-169/+375
2025-09-06Auto merge of #146233 - jieyouxu:run-make-fission, r=Kobzolbors-72/+152
Split `run-make` into two {`run-make`,`run-make-cargo`} test suites ## Summary Split `tests/run-make` into two test suites, to make it faster and more convenient for contributors to run run-make tests that do not need in-tree `cargo`. | New test suites | Explanation | | ---------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `tests/run-make` | The "fast path" test suite intended for run-make tests that do not need in-tree `cargo`. These tests may not use `cargo`. | | `tests/run-make-cargo` | The "slow path" test suite that requires checking out `cargo` submodule and building in-tree `cargo`, and thus will have access to in-tree `cargo`. In practice, these constitute a very small portion of the original `run-make` tests. | This PR carries out [MCP 847: Split run-make test suite into slower-building test suite with suitably-staged cargo and faster-building test suite without cargo](https://github.com/rust-lang/compiler-team/issues/847). Fixes rust-lang/rust#135573 (for the tests that do not need in-tree `cargo`). Fixes rust-lang/rust#134109. ## Remarks - I considered if we want to split by in-tree tools previously. However, as discussed rust-lang/rust#134109, in practice `rustdoc` is not very slow to build, but `cargo` takes a good few minutes. So, the partition boundary was determined to be along in-tree `cargo` availability. - The `run-make` tests previously that wanted to use `cargo` cannot just use the bootstrap `cargo`, otherwise they would run into situations where bootstrap `cargo` can significantly diverge from in-tree `cargo` (see https://github.com/rust-lang/rust/pull/130642). --- try-job: aarch64-msvc-1 try-job: test-various try-job: x86_64-gnu-debug try-job: aarch64-gnu-debug try-job: aarch64-apple try-job: dist-various-1
2025-09-06Simplify rustdoc-gui tester by calling directly `browser-ui-test`Guillaume Gomez-418/+13
2025-09-06Rollup merge of #146266 - RalfJung:miri-nosys, r=jieyouxuMatthias Krüger-1/+1
miri std tests: skip all of sys:: Matches https://github.com/rust-lang/miri-test-libstd/pull/104
2025-09-06Rollup merge of #146263 - jieyouxu:check-bump-stage0, r=KobzolMatthias Krüger-2/+14
Fix `bump-stage0` build failure, and check-build `bump-stage0` in CI This PR bumps the `toml` dependency of the `bump-stage0` tool to `0.8.23`, which AFAICT is the highest `toml` version that's present in the r-l/r workspace's `Cargo.lock` already (so we don't introduce _another_ `toml 0.x.*` series). I added some byte-buffer-to-string intermediary to workaround `toml 0.8.*` not having the `toml 0.9.*` `toml::from_slice` API. To catch obvious build failures of the `src/tools/bump-stage0` tool early, before we find out it can't even build when we really need it to work. Contexts: - https://github.com/rust-lang/rust/pull/146250#issue-3388327410 - [#t-release > Bump stage0 rustfmt separately ("one-off") @ 💬](https://rust-lang.zulipchat.com/#narrow/channel/241545-t-release/topic/Bump.20stage0.20rustfmt.20separately.20.28.22one-off.22.29/near/537916615) Fixes rust-lang/rust#146252.
2025-09-06miri std tests: skip all of sys::Ralf Jung-1/+1
2025-09-06ci: check `src/tools/bump-stage0` in `pr-check-2`Jieyou Xu-0/+1
To catch obvious build failures of the `src/tools/bump-stage0` early, before we find out it can't even build when we really need it to work.
2025-09-06bootstrap: add check step for `src/tools/bump-stage0`Jieyou Xu-0/+7
2025-09-06bump-stage0: pick highest common `toml` version, add a workaroundJieyou Xu-2/+6
- We pick the higest common `toml` version used in the r-l/r workspace to avoid introducing Yet Another `toml` `0.x` version, which happens to be `0.8.23` as of the time of writing. - We introduce a byte-buffer-to-string workaround for the `toml 0.8.*` series that do not have the `toml 0.9.*` series's `toml::from_slice` API yet. Not efficient, but this is not perf-critical so it's fine.
2025-09-06Auto merge of #146253 - Kobzol:cargo-lto, r=jieyouxubors-2/+4
Optimize Cargo with LTO This optimization was "lost" when Cargo was switched away from a `ToolRustcPrivate` to a `ToolTarget` tool. r? `@jieyouxu`
2025-09-06Add allow `else` keyword completion in LetStmtA4-Tacks-17/+220
Example --- ```rust fn foo() { let _ = 2 el$0 } ``` -> ```rust fn foo() { let _ = 2 else { $0 }; } ```
2025-09-06point to Compiler team docs on ForgeTshepang Mbambo-0/+4
2025-09-06reduce overlong physical lines (sembr)Tshepang Mbambo-20/+51
2025-09-06capitalize "zulip"Tshepang Mbambo-7/+7
2025-09-06Zulip streams have been renamed to channelsTshepang Mbambo-11/+11
https://blog.zulip.com/2024/07/25/zulip-9-0-released
2025-09-05Rollup merge of #146199 - Kobzol:bootstrap-cargo-doc, r=jieyouxuTrevor Gross-27/+145
Document Cargo with in-tree rustdoc Fixes https://rust-lang.zulipchat.com/#narrow/channel/266220-t-rustdoc/topic/nightly.20rust.20doc.20seem.20corrupted. r? `@jieyouxu` try-job: dist-x86_64-linux-alt
2025-09-05Rollup merge of #146250 - fmease:bump-stage0-rustfmt, r=Mark-SimulacrumLeón Orell Valerian Liehr-121/+121
Bump stage0 rustfmt Unblocks rust-lang/rust#146071, cc `@npmccallum.` Steps to reproduce: 1. Temporarily upgrade `src/tools/bump-stage0`'s `toml` dependency from 0.7 to 0.9 to fix build error (see Zulip topic) 2. Execute `./x run src/tools/bump-stage0` 3. Manually revert changes unrelated to nightly `rustfmt`+`rustc` (the latter needs to be bumped, too, for the driver ([via](https://github.com/rust-lang/rust/pull/146250#discussion_r2325742775))) r? `@Mark-Simulacrum` as discussed in [#t-release > Bump stage0 rustfmt separately ("one-off")](https://rust-lang.zulipchat.com/#narrow/channel/241545-t-release/topic/Bump.20stage0.20rustfmt.20separately.20.28.22one-off.22.29/with/537916615)
2025-09-05Rollup merge of #146234 - hkBst:file-generated-header, r=tgross35León Orell Valerian Liehr-1/+1
change file-is-generated doc comment to inner Alternatively this could perhaps be better as a normal comment...
2025-09-05Rollup merge of #146041 - lolbinarycat:tidy-escheck-bless, r=KobzolLeón Orell Valerian Liehr-10/+22
tidy: --bless now makes escheck run with --fix this mirrors how other extra-check tools work. unsure if this also needs to be done for tsc and es-check.
2025-09-05Rollup merge of #145735 - joshtriplett:style-guide-trailing-whitespace, ↵León Orell Valerian Liehr-2/+10
r=joshtriplett style-guide: Document absence of trailing whitespace We didn't previously have a blanket prohibition on trailing whitespace. Adding one, inspired by discussion in https://github.com/rust-lang/rust/pull/145617 .
2025-09-05Rollup merge of #139113 - folkertdev:sanitizer-unstable-book-check-block, ↵León Orell Valerian Liehr-16/+16
r=rcvalle unstable book: in a sanitizer example, check the code Use some `#` directives to make sure the code checks on x86_64, and does not produce errors on other platforms. This example still used an older version of `#[naked]`, and because the snippet was ignored that was missed before. I'm not sure when this gets built on CI exactly, so it might be worthwhile to try and build it for a non-x86_64 architecture to make sure that works. I'm not sure how to verify locally that e.g. on aarch64 this code works without errors/warnings. try-job: aarch64-apple try-job: x86_64-msvc-2
2025-09-05Merge pull request #2422 from aDotInTheVoid/tenthousandyearsAlona Enraght-Moony-2/+84
Start documenting tests/rustdoc-json
2025-09-05Better linkAlona Enraght-Moony-1/+1
2025-09-05Consistent punctuationAlona Enraght-Moony-4/+4
2025-09-05Make footnote render correctly in githubAlona Enraght-Moony-2/+2
2025-09-05Bump stage0 rustfmtLeón Orell Valerian Liehr-121/+121
2025-09-05compiler: Add Windows resources to rustc-main and rustc_driverAleksey Kliger-5/+5
Adds Windows resources with the rust version information to rustc-main.exe and rustc_driver.dll Sets the product description to "Rust Compiler" or "Rust Compiler (channel)" for non-stable channels
2025-09-05Optimize Cargo with LTOJakub Beránek-2/+4
2025-09-05Fix conditionJakub Beránek-1/+1
2025-09-05Auto merge of #146121 - Muscraft:filter-suggestion-parts, r=petrochenkovbors-8/+4
fix: Filter suggestion parts that match existing code While testing my changes to make `rustc` use `annotate-snippets`, I encountered a new `clippy` test failure stemming from [two](https://github.com/rust-lang/rust/pull/145273/files#diff-6e8403e31463539666afbc00479cb416dc767a518f562b6e2960630953ee7da2R275-R278) [suggestion](https://github.com/rust-lang/rust/pull/145273/files#diff-6e8403e31463539666afbc00479cb416dc767a518f562b6e2960630953ee7da2R289-R292) output changes in rust-lang/rust#145273. The new output in these two cases feels like a regression as it is not as clear as the old output, and adds unnecessary information. Before rust-lang/rust#145273 (`Diff` style) ![before](https://github.com/user-attachments/assets/36f33635-cbce-45f1-823d-0cbe6f0cfe46) After rust-lang/rust#145273 ("multi-line" style) ![after](https://github.com/user-attachments/assets/d4cb00b8-5a42-436e-9329-db84347138f0) The reason for the change was that a new suggestion part (which matches existing code) was added on a different line than the existing parts, causing the suggestion style to change from `Diff` to "multi-line". Since this new part matches existing code, no code changes show up in the output for it, but it still makes the suggestion style "multi-line" when it doesn't need to be. To get the old output back, I made it so that suggestion parts that perfectly match existing code get filtered out. try-job: aarch64-apple
2025-09-05Add a comment about the "specialization" feature required because of `im-rc`Jakub Beránek-0/+2
2025-09-05Update renamed `take_region_var_origins`Ada Alakbarova-2/+2
This was first renamed to `get_region_var_origins` in https://github.com/rust-lang/rust/pull/109753, and then to `get_region_var_infos` in https://github.com/rust-lang/rust/commit/b0fc1d47d5dcffb5d516059d4a5af3b6843132d5