about summary refs log tree commit diff
path: root/src
AgeCommit message (Collapse)AuthorLines
2025-08-26Update GCC submoduleGuillaume Gomez-0/+0
2025-08-26Update to LLVM 21.1.0Nikita Popov-0/+0
2025-08-26bootstrap: Make `default_codegen_backend` return `&CodegenBackendKind` ↵Guillaume Gomez-12/+6
instead of an `Option`
2025-08-26bootstrap: error early if any `codegen-backends` is set to `[]`Guillaume Gomez-0/+4
2025-08-26Auto merge of #145886 - GuillaumeGomez:rollup-9qv7jhv, r=GuillaumeGomezbors-34/+182
Rollup of 11 pull requests Successful merges: - rust-lang/rust#144373 (remove deprecated Error::description in impls) - rust-lang/rust#144551 (Add aarch64_be-unknown-linux-musl target) - rust-lang/rust#145076 (Add new Tier-3 target: riscv64a23-unknown-linux-gnu) - rust-lang/rust#145481 (Add parentheses for closure when suggesting calling closure) - rust-lang/rust#145596 (Losslessly optimize PNG files) - rust-lang/rust#145615 (Fix doc of `std::os::windows::io::BorrowedSocket::borrow_raw`) - rust-lang/rust#145841 (Always build miri for the host in `x run miri`) - rust-lang/rust#145861 (bootstrap: vendor `clippy_test_deps` too) - rust-lang/rust#145863 (formatting_options: Make all methods `const`) - rust-lang/rust#145867 (cg_llvm: Assert that LLVM range-attribute values don't exceed 128 bits) - rust-lang/rust#145875 (Make bootstrap command caching opt-in) r? `@ghost` `@rustbot` modify labels: rollup
2025-08-27fix: Prevent invalid transformation in 'Replace match with if let' assistsgasho-1/+23
2025-08-26platform-support: Fix LoongArch32 host columnWANG Rui-2/+2
2025-08-26Rollup merge of #145875 - Kobzol:bootstrap-caching, r=jieyouxuGuillaume Gomez-17/+30
Make bootstrap command caching opt-in It was opt-out before, which was causing some really hard to debug issues. CC `@Shourya742` r? `@jieyouxu`
2025-08-26Rollup merge of #145861 - cuviper:vendor-clippy, r=KobzolGuillaume Gomez-0/+1
bootstrap: vendor `clippy_test_deps` too This internal crate explicitly separates itself from the `rustc` workspace, but it is needed for `./x test clippy` to work, including its dependencies when building from a vendored `rustc-src` tarball.
2025-08-26Rollup merge of #145841 - Kobzol:fix-miri-run, r=jieyouxuGuillaume Gomez-17/+56
Always build miri for the host in `x run miri` Previously we were building Miri for the passed `--target`, which was wrong. Fixes: https://github.com/rust-lang/rust/issues/145839 r? `@jieyouxu`
2025-08-26Rollup merge of #145596 - lumiscosity:optimize-png-files, r=davidtwcoGuillaume Gomez-0/+0
Losslessly optimize PNG files Losslessly optimizes all of the PNG files in the repo. Done with: ``` oxipng -o max -a -s oxipng -o max --zopfli -a -s ```
2025-08-26Rollup merge of #145076 - ZhongyaoChen:feature/add-tier3-riscv64a23-target, ↵Guillaume Gomez-0/+44
r=davidtwco Add new Tier-3 target: riscv64a23-unknown-linux-gnu MCP: [Tier 3 target proposal: riscv64a23-unknown-linux-gnu](https://github.com/rust-lang/compiler-team/issues/894) Changes: - add new target: riscv64a23-unknown-linux-gnu - add target page
2025-08-26Rollup merge of #144551 - neuschaefer:a64be-musl, r=davidtwcoGuillaume Gomez-0/+51
Add aarch64_be-unknown-linux-musl target This PR adds a target definition for big-endian Aarch64 with musl-libc. cc `@Gelbpunkt`
2025-08-26Bless clippy tests.Mara Bos-22/+38
2025-08-26Inherit TCC in debuginfo tests on macOSMads Marquart-0/+29
2025-08-26Auto merge of #145874 - Kobzol:fix-dist-builds, r=jieyouxubors-31/+112
Remove unnecessary stage2 host builds from cross-compiled dist builders This is a repeated regression (https://github.com/rust-lang/rust/issues/138004, https://github.com/rust-lang/rust/issues/138123) that was reintroduced in https://github.com/rust-lang/rust/pull/145472. I thought that we have a test for it, but alas, the "correct" test required `--disable-docs`. I added the test in this PR, and re-added the `dist::Std` build optimization that solves this. r? `@jieyouxu`
2025-08-26Remove myself from adhoc_groupJieyou Xu-1/+0
2025-08-26add a flag to codegen fn attrs for foreign itemsJana Dönszelmann-4/+3
2025-08-26Cache LLVM config invocationsJakub Beránek-6/+21
2025-08-26Make bootstrap command caching opt-inJakub Beránek-11/+9
It was too dangerous to cache by default, and was it causing real bugs.
2025-08-26Do not unnecessarily build stage2 host rustc in some dist buildersJakub Beránek-36/+34
2025-08-26Add snapshot test for cross-compiled dist without docsJakub Beránek-5/+88
2025-08-26stabilization_guide: fix macro name and syntax in gating exampleAli Nazzal-1/+1
2025-08-26Always build miri for the host in `x run miri`Jakub Beránek-17/+56
2025-08-26Merge pull request #20399 from rust-lang/veykril/push-klrwvmzokqwuShoyu Vanilla (Flint)-2/+2
Enable warning logs by default
2025-08-26Merge pull request #20534 from A4-Tacks/tog-macro-delim-semicolonShoyu Vanilla (Flint)-3/+33
Fix ExprStmt delete semicolon for toggle_macro_delimiter
2025-08-26Merge pull request #20509 from A4-Tacks/fix-move-guard-to-arm-indentShoyu Vanilla (Flint)-13/+57
Fix indent for move_guard_to_arm_body
2025-08-26Merge pull request #20520 from ChayimFriedman2/reborrowShoyu Vanilla (Flint)-5/+88
feat: Add an option to remove reborrows from adjustment inlay hints
2025-08-26Merge pull request #20537 from ChayimFriedman2/new-solver-normalizeShoyu Vanilla (Flint)-6/+45
fix: Normalize all types when finishing inference
2025-08-26Rollup merge of #145858 - alexcrichton:update-wasm-component-ld, r=lqdStuart Cook-2/+1
Update wasm-component-ld dependency Keeping it up-to-date with the latest changes/features.
2025-08-26Rollup merge of #145856 - rustbot:docs-update, r=ehussStuart Cook-0/+0
Update books ## rust-lang/nomicon 1 commits in 3ff384320598bbe8d8cfe5cb8f18f78a3a3e6b15..57ed4473660565d9357fcae176b358d7e8724ebf 2025-08-18 17:31:07 UTC to 2025-08-18 17:31:07 UTC - Fix unknown field `author` error when building the book (rust-lang/nomicon#500) ## rust-lang/reference 11 commits in 59b8af811886313577615c2cf0e045f01faed88b..89f67b3c1b904cbcd9ed55e443d6fc67c8ca2769 2025-08-22 07:16:52 UTC to 2025-08-14 18:42:19 UTC - Update `instruction_set` to use the attribute template (rust-lang/reference#1912) - Update `debugger_visualizer` to use the attribute template (rust-lang/reference#1922) - Update `collapse_debuginfo` to use the attribute template (rust-lang/reference#1923) - Clarify operand evaluation order in compound assignment with primitiv… (rust-lang/reference#1941) - Switch to using native mdbook fragment redirects (rust-lang/reference#1965) - Fix traits implemented for function items (rust-lang/reference#1969) - Clarify that safe extern items do not require unsafe (rust-lang/reference#1970) - Update `type_length_limit` to use the attribute template (rust-lang/reference#1917) - Add missing rule identifier for const outer generics (rust-lang/reference#1962) - Fix indentation of static path restriction text (rust-lang/reference#1961) - Add doc for `sse4a` and `tbm` (rust-lang/reference#1949) ## rust-lang/rust-by-example 2 commits in adc1f3b9012ad3255eea2054ca30596a953d053d..ad27f82c18464525c761a4a8db2e01785da59e1f 2025-08-20 23:50:16 UTC to 2025-08-13 21:41:46 UTC - Support building books using mdbook in main (v0.5.x) (rust-lang/rust-by-example#1952) - Improve the hints in `fmt` (1.2.3. Formatting); mention type casting (rust-lang/rust-by-example#1951)
2025-08-26Rollup merge of #145845 - Kobzol:fix-distcheck, r=jieyouxuStuart Cook-25/+53
Make `x test distcheck` self-contained Before, the checked components were extracted under the checked out source root, which caused us to test some weird combination of tarball + checkout sources/aritfacts/configuration. Now `x test distcheck` works with an external temporary directory instead, which should make it self-contained. I also moved some config from the Dockerfile to the test itself, and fixed an issue in tidy that caused `x test tidy` to fail on tarball sources. I also removed `.args(&builder.config.configure_args)`, because it was passing all kinds of crap from the CI config to the distcheck step, which was making it less reproducible. Fixes: https://github.com/rust-lang/rust/issues/145183 r? ```@jieyouxu``` try-job: x86_64-gnu-distcheck
2025-08-26Rollup merge of #145821 - lolbinarycat:compiletest-error-show, r=clubby789Stuart Cook-2/+3
compiletest: if a compiler fails, show its output Before, when working on something like a `rustdoc-js` test, if you made a syntax error in a rust file, you would not get that error output unless you ran with `--verbose`, which would also cause an enormous amount of other output to be printed as well. This can also lead to frustration in new contributors who don't think to run with `--verbose`. Now, if rustc or rustdoc is run by compiletest and produces an non-zero exit code, its output will be printed.
2025-08-26Rollup merge of #145815 - jieyouxu:pr-check-timeout, r=marcoieniStuart Cook-3/+6
Wait for DPkg frontend lock when trying to remove packages Hopefully this helps with [#t-infra > pr-check-1 fails on "free up disk space"](https://rust-lang.zulipchat.com/#narrow/channel/242791-t-infra/topic/pr-check-1.20fails.20on.20.22free.20up.20disk.20space.22/with/535794424). As suggested by riking in [#t-infra > pr-check-1 fails on "free up disk space" @ 💬](https://rust-lang.zulipchat.com/#narrow/channel/242791-t-infra/topic/pr-check-1.20fails.20on.20.22free.20up.20disk.20space.22/near/535791579), thanks! r? infra-ci
2025-08-26Rollup merge of #145811 - houpo-bob:master, r=samueltardieuStuart Cook-6/+6
Fix some minor issues in comments Fix some minor issues in comments
2025-08-26Rollup merge of #145766 - epage:rustfmt, r=calebcartwrightStuart Cook-0/+74
test(rustfmt): Verify frontmatter is preserved This is to prove that the frontmatter is preserved. The choices in tests is intended for showing the different parts of the proposed Style Guide for frontmatters (rust-lang/rust#145617). While rustfmt is developed in a different repo, work involving upstream integration is blocked on some work that is being finished up in that repo. I was told that it would be ok to post against this repo in the mean time. Tracking issue: rust-lang/rust#136889
2025-08-26Rollup merge of #145535 - lolbinarycat:rustdoc-invalid_html_tags-svg-145529, ↵Stuart Cook-169/+381
r=GuillaumeGomez make rustdoc::invalid_html_tags more robust best reviewed a commit at a time. I kept finding more edge case so I ended up having to make quite significant changes to the parser in order to make it preserve state across events and handle multiline attributes correctly. fixes rust-lang/rust#145529
2025-08-25bootstrap: vendor `clippy_test_deps` tooJosh Stone-0/+1
This internal crate explicitly separates itself from the `rustc` workspace, but it is needed for `./x test clippy` to work, including its dependencies when building from a vendored `rustc-src` tarball.
2025-08-25Refactor *.optimized-compiler-builtins bootstrap optionsPaul Murphy-34/+66
Create a dedicated enum to abstract the different ways compiler-builtins can be configured. This also relaxes build.optimized-compiler-builtins to accept the path of a library to match the behavior of <target>.optimized-compiler-builtins override.
2025-08-25Allow linking a prebuilt optimized compiler-rt builtins libraryPaul Murphy-24/+43
Extend the <target>.optimized-compiler-builtins bootstrap option to accept a path to a prebuilt compiler-rt builtins library, and update compiler-builtins to enable optimized builtins without building compiler-rt builtins.
2025-08-25Update wasm-component-ld dependencyAlex Crichton-2/+1
Keeping it up-to-date with the latest changes/features.
2025-08-25Add aarch64_be-unknown-linux-musl targetJ. Neuschäfer-0/+51
2025-08-25Merge pull request #20423 from ShoyuVanilla/import-2024Chayim Refael Friedman-50/+219
Make import sorting order follow 2024 edition style
2025-08-25Merge pull request #20528 from ShoyuVanilla/nightly-zscriptChayim Refael Friedman-0/+1
fix: Masquerade as nightly cargo when invoking flycheck with `-Zscript`
2025-08-25Don't map Chalk's `Normalize` to next solver's `NormalizesTo`Chayim Refael Friedman-6/+16
`NormalizesTo` is a private predicate that should not be used outside the solver. For normalization, rustc uses `AliasRelate`, so replace with that.
2025-08-25Normalize all types when finishing inferenceChayim Refael Friedman-0/+29
The new solver does not eagerly normalize, but things after inference expect types to be normalized. rustc does the same. Also, I'm afraid other things in r-a don't expect results of the solver to be unnormalized. We'll need to handle that.
2025-08-25Update booksrustbot-0/+0
2025-08-25Auto merge of #145472 - Kobzol:bootstrap-dist, r=jieyouxubors-273/+607
Enforce in bootstrap that dist and install must have stage at least 1 This is a continuation of my efforts to fix staging in bootstrap after the stage0 redesign. This PR gets rid of all `compiler_for` usages in the `dist` steps :tada: The only remaining usages are in the `test` steps, which are my next goal, and which will be the final boss.. both because they are quite tricky, and because most of the the rest of the steps have been already fixed. The changes are relatively straightforward, `x dist` defaults to stage 2, so in that case we want to use a stage 1 build compiler for everything (except stdlib, but we usually use it even there because of uplifting). What I didn't fix yet are the docs steps, because they are *very* implicit right now, and fixing them deserves its own PR. The first commit reverts the tests that I accidentally removed in https://github.com/rust-lang/rust/pull/145340 :man_facepalming: I did it in this PR to avoid further git conflicts.. Best reviewed commit-by-commit. r? `@jieyouxu` try-job: dist-i686-linux try-job: dist-armhf-linux try-job: dist-x86_64-linux try-job: dist-x86_64-msvc try-job: dist-apple-various try-job: dist-x86_64-apple try-job: x86_64-msvc-2
2025-08-25rustdoc(opt): build_impl: check document_private earlierbinarycat-17/+17
2025-08-25Cache trait solving across queries in the same revisionChayim Refael Friedman-66/+140
Caching trait solving can do a lot to speed. Unfortunately it also consume a huge amount of memory. Therefore, as part of the migration to the new solver Jack Huey disabled caching of trait solving (he made the query transparent). The PR proposes a middle ground: do cache trait solving, but only for the same revision. This allows us to be safe because during a revision the inputs cannot change. The result is hopefully much better performance to features that tend to do a bulk of trait solving, and also repeat the same query (e.g. inference then IDE features). There is another limitation: results are only cached in the same thread, to remove the need for synchronization which will be expensive. More measurements are required to check whether it's better to use a synchronized global cache, or maybe stay with a thread-local cache but batch multiple feature requests (highlighting, inlay hints etc.) of the same file to the same thread. Alongside the actual cache we store the revision, because we need to verify it (we can't eagerly clear caches when incrementing the revision), and also the address of the db to prevent multiple dbs from interleaving (this is mostly relevant in tests, although injected highlighting also uses a new db, therefore maybe it's better to move it to a separate thread). This "games" analysis-stats to both be way faster and use way more memory; the former is because analysis-stats doesn't increment revisions, therefore all queries share the cache and hit ratio is way too good, the latter is because analysis-stats doesn't increment revisions and therefore the cache isn't cleared. Both are not representative of a typical IDE scenario.