about summary refs log tree commit diff
path: root/src
AgeCommit message (Collapse)AuthorLines
2025-03-03Do not use rustup to build Rust for LinuxJakub Beránek-10/+8
2025-03-03Rollup merge of #137955 - Noratrieb:rustdoc-json-long-lines, ↵Matthias Krüger-4/+17
r=aDotInTheVoid,jieyouxu Always allow rustdoc-json tests to contain long lines The rustdoc-json test syntax often requires very long lines, so the checks for long lines aren't really useful. `@aDotInTheVoid` told me she'd like this and r? jieyouxu you're gonna tell me that the implementation is terrible. at least the performance seems reasonable: 2.5s after and 2.5s before.
2025-03-03Rollup merge of #137946 - ehuss:ci-docker-readme, r=KobzolMatthias Krüger-2/+2
Fix docker run-local docs This fixes the docker run-local docs to have a valid cargo command.
2025-03-03Rollup merge of #137922 - Zalathar:sharded, r=SparrowLiiMatthias Krüger-4/+1
A few cleanups after the removal of `cfg(not(parallel))` I noticed a few small things that are no longer needed after the removal of `cfg(not(parallel))` in #132282. One of the later changes adjusts several imports, so viewing the changes individually is recommended. r? SparrowLii (or reroll)
2025-03-03Rollup merge of #137921 - lnicola:sync-from-ra, r=lnicolaMatthias Krüger-4153/+5956
Subtree update of `rust-analyzer` r? `@ghost`
2025-03-03Rollup merge of #137902 - nnethercote:ast-lexer-TokenKind, r=compiler-errorsMatthias Krüger-17/+30
Make `ast::TokenKind` more like `lexer::TokenKind` This is step 2 of https://github.com/rust-lang/compiler-team/issues/831. r? `@spastorino`
2025-03-03Rollup merge of #137882 - onur-ozkan:remove-extra-compiler-stage, r=KobzolMatthias Krüger-9/+44
do not build additional stage on compiler paths When calling `x build compiler (or rustc) --stage N` bootstrap builds stage N+1 compiler, which is clearly not what we requested. This doesn't happen when running `x build --stage N` without explicitly targeting the compiler. The changes applied fix this issue. r? ghost
2025-03-03Rollup merge of #137852 - moulins:layout-nonarray-simd-deadcode, ↵Matthias Krüger-36/+11
r=workingjubilee Remove layouting dead code for non-array SIMD types. These aren't supported anymore, and are already rejected in type checking.
2025-03-03Auto merge of #137914 - matthiaskrgr:rollup-phaxe6f, r=matthiaskrgrbors-30/+98
Rollup of 6 pull requests Successful merges: - #137103 ({json|html}docck: catch and error on deprecated syntax) - #137632 (rustdoc: when merging target features, keep the highest stability) - #137684 (Add rustdoc support for `--emit=dep-info[=path]`) - #137794 (make qnx pass a test) - #137801 (tests: Unignore target modifier tests on all platforms) - #137826 (test(codegen): add looping_over_ne_bytes test for #133528) r? `@ghost` `@rustbot` modify labels: rollup
2025-03-03Remove i586-pc-windows-msvcNoratrieb-3/+1
See MCP 840. I left a specialized error message that should help users that hit this in the wild (for example, because they use it in their CI).
2025-03-03Always allow rustdoc-json tests to contain long linesNoratrieb-4/+17
The rustdoc-json test syntax often requires very long lines, so the checks for long lines aren't really useful.
2025-03-03Add an anchor to directly link to the -Zmiri-tree-borrows docsJake Goulding-1/+2
2025-03-04[rustdoc] hide item that is not marked as doc(inline) and whose src is ↵xizheyin-2/+20
doc(hidden) Signed-off-by: xizheyin <xizheyin@smail.nju.edu.cn>
2025-03-04compiletest: change `TEST_BUILD_DIR` to maximally normalize许杰友 Jieyou Xu (Joe)-2/+15
This is to make test stderr insensitive to compare-mode / debugger that changes the test build dir output name. Previously, this normalized paths up to test-suite-specific build root, e.g. `/path/to/build/test/ui/`. Now, this normalizes up to test-specific build root, e.g. `/path/to/build/test/ui/subdir/$name.$revision.$mode.$debugger/`.
2025-03-03Fix docker run-local docsEric Huss-2/+2
2025-03-03Skip Rust for Linux in CI temporarilyJakub Beránek-2/+3
2025-03-03Bump minimum supported toolchain to 1.82Laurențiu Nicola-1/+1
2025-03-03Merge pull request #19261 from Veykril/push-rnqlyrvqpolsLukas Wirth-293/+496
Support tuple struct patterns for expand_rest_pattern assist
2025-03-03Merge pull request #19243 from Veykril/push-qrrqsywkwyzpLukas Wirth-64/+96
Allow unsetting default cfgs
2025-03-03Merge pull request #19244 from Veykril/push-nmnrnlysvyvkLukas Wirth-114/+140
Warn when the used toolchain looks too old for rust-analyzer
2025-03-03Support tuple struct patterns for expand_rest_pattern assistLukas Wirth-25/+217
2025-03-03Add dangling implbit-aloo-31/+54
- Adds dangling impl diagnostics - Rename validation test from dangling_impl to dangling_iml_ref
2025-03-03Rollup merge of #137618 - yotamofek:pr/pre-push-hook, r=Mark-SimulacrumMatthias Krüger-0/+14
Skip `tidy` in pre-push hook if the user is deleting a remote branch It's kinda annoying when I'm trying to delete remote branches and that triggers `tidy`, so small fix to prevent that. Hopefully this should be an acceptable amount of complexity to add to this shell script.
2025-03-03Rollup merge of #137525 - tgross35:test-float-parse-less-parallelization, ↵Matthias Krüger-226/+174
r=Mark-Simulacrum Simplify parallelization in test-float-parse Currently, test case generators are launched in parallel and their test cases also run in parallel, all within the same pool. I originally implemented this with the assumption that there would be an advantage in parallelizing the generators themselves, but this turns out to not really have any benefit. Simplify things by running generators in series while keeping their test cases parallelized. This makes the code easier to follow, and there is no longer a need for MPSC or multiprogress bars. Additionally, the UI output can be made cleaner.
2025-03-03Rollup merge of #132388 - frank-king:feature/where-cfg, r=petrochenkovMatthias Krüger-20/+165
Implement `#[cfg]` in `where` clauses This PR implements #115590, which supports `#[cfg]` attributes in `where` clauses. The biggest change is, that it adds `AttrsVec` and `NodeId` to the `ast::WherePredicate` and `HirId` to the `hir::WherePredicate`.
2025-03-03Remove some unnecessary aliases from `rustc_data_structures::sync`Zalathar-4/+1
With the removal of `cfg(parallel_compiler)`, these are always shared references and `std::sync::OnceLock`.
2025-03-03Merge pull request #19269 from lnicola/sync-from-rustLaurențiu Nicola-18845/+39668
minor: sync from downstream
2025-03-03Bump rustc cratesLaurențiu Nicola-20/+20
2025-03-03Merge from rust-lang/rustLaurențiu Nicola-18824/+39647
2025-03-03Preparing for merge from rust-lang/rustLaurențiu Nicola-1/+1
2025-03-03Rollup merge of #137684 - GuillaumeGomez:rustdoc-dep-info, r=notriddleMatthias Krüger-15/+56
Add rustdoc support for `--emit=dep-info[=path]` Fixes #91982. This PR adds the `--emit=dep-info` command line flag support. It will be helpful for `cargo` development. cc ````@epage```` r? ````@notriddle````
2025-03-03Rollup merge of #137103 - yotamofek:pr/jsonhtmldocck-deprecated-syntax, ↵Matthias Krüger-15/+42
r=aDotInTheVoid {json|html}docck: catch and error on deprecated syntax https://github.com/rust-lang/rust/pull/137099#pullrequestreview-2619498733
2025-03-03Merge pull request #19226 from Shourya742/2025-02-25-fix-completion-ref-matchingChayim Refael Friedman-3/+25
completion-ref-matching
2025-03-03Rename `ast::TokenKind::Not` as `ast::TokenKind::Bang`.Nicholas Nethercote-3/+3
For consistency with `rustc_lexer::TokenKind::Bang`, and because other `ast::TokenKind` variants generally have syntactic names instead of semantic names (e.g. `Star` and `DotDot` instead of `Mul` and `Range`).
2025-03-03Replace `ast::TokenKind::BinOp{,Eq}` and remove `BinOpToken`.Nicholas Nethercote-14/+27
`BinOpToken` is badly named, because it only covers the assignable binary ops and excludes comparisons and `&&`/`||`. Its use in `ast::TokenKind` does allow a small amount of code sharing, but it's a clumsy factoring. This commit removes `ast::TokenKind::BinOp{,Eq}`, replacing each one with 10 individual variants. This makes `ast::TokenKind` more similar to `rustc_lexer::TokenKind`, which has individual variants for all operators. Although the number of lines of code increases, the number of chars decreases due to the frequent use of shorter names like `token::Plus` instead of `token::BinOp(BinOpToken::Plus)`.
2025-03-02Rollup merge of #137755 - DaniPopes:wasmtime-threads-flag, r=NoratriebMatthias Krüger-2/+2
doc: update Wasmtime flags Wasmtime's `--wasm-features` and `--wasi-modules` flags have been renamed since these docs were initially written. Additionally, from my testing I don't believe `--wasm threads` is needed if `--wasi threads` is passed already.
2025-03-02Auto merge of #137661 - nikic:llvm20-rc3, r=cuviperbors-0/+0
Update to LLVM 20 rc 3 Fixes a compiler-builtins miscompile (see https://github.com/rust-lang/compiler-builtins/pull/760).
2025-03-02Merge pull request #19266 from the-mikedavis/lsp-pull-diagnostics-identifierLaurențiu Nicola-1/+1
Add `identifier` to pull diagnostic LSP capabilities
2025-03-02Add `identifier` to pull diagnostic LSP capabilitiesMichael Davis-1/+1
This field in the server capabilities instructs the client to maintain the diagnostics received from a `textDocument/diagnostic` pull request as a separate set from other diagnostics: namely those sent with classic "push" diagnostics, `textDocument/publishDiagnostic`. rust-analyzer emits "native" diagnostics (computed by rust-analyzer itself) in pull diagnostics and separately emits cargo-based diagnostics with push, so push and pull diagnostics should be different sets. Setting this field instructs the client to avoid clearing push diagnostics when new pull diagnostics arrive and vice versa.
2025-03-02add diagnostic for dangling implbit-aloo-3/+40
2025-03-02add diagnostic for dangling dynbit-aloo-9/+43
2025-03-02Fix transparent diagnosticsLaurențiu Nicola-6/+1
2025-03-02Auto merge of #137425 - yotamofek:pr/rustdoc/return-impl-display-redux, ↵bors-2274/+2476
r=GuillaumeGomez `librustdoc`: return `impl fmt::Display` in more places instead of writing to strings Continuation of #136784 , another attempt at landing the larger parts of #136748 . I'd like to, gradually, make all of the building blocks for rendering docs in `librustdoc` return `impl fmt::Display` instead of returning `Strings`, or receiving a `&mut String` (or `&mut impl fmt::Write`). Another smaller end goal is to be able to get rid of [`write_str`](https://github.com/rust-lang/rust/blob/8dac72bb1d12b2649acd0c190e41524f83da5683/src/librustdoc/html/format.rs#L40-L42). This PR is a large step in that direction. Most of the changes are quite mechanical, and split up into separate commits for easier reviewing (hopefully). I took `print_item` and then started by converting all the functions it called (and their dependencies), and the last commit does the conversion for `print_item` itself. Ignoring whitespace should make reviewing a bit easier. And most importantly, perf run shows pretty good results locally, hopefully CI will also show green 😁 r? `@GuillaumeGomez` , if you feel like it.
2025-03-02Remove layouting dead code for non-array SIMD types.Moulins-36/+11
These aren't supported anymore, and are already rejected in type checking.
2025-03-02extend scope of build_all testonur-ozkan-5/+40
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2025-03-02dec2flt: Refactor float traitsTrevor Gross-3/+3
A lot of the magic constants can be turned into expressions. This reduces some code duplication. Additionally, add traits to make these operations fully generic. This will make it easier to support `f16` and `f128`.
2025-03-02Auto merge of #136864 - Kobzol:citool, r=marcoienibors-325/+1043
Rewrite the `ci.py` script in Rust It would seem that I would learn by now that any script written in Python will become unmaintainable sooner or later, but alas.. r? `@marcoieni` try-job: aarch64-gnu try-job: dist-x86_64-linux-alt try-job: x86_64-msvc-ext2 Fixes: https://github.com/rust-lang/rust/issues/137013
2025-03-02clippyRalf Jung-2/+1
2025-03-02do not build additional stage on compiler pathsonur-ozkan-5/+5
When calling `x build compiler (or rustc) --stage N` bootstrap builds stage N+1 compiler, which is clearly not what we requested. This doesn't happen when running `x build --stage N` without explicitly targeting the compiler. The changes applied fix this issue. Signed-off-by: onur-ozkan <work@onurozkan.dev>
2025-03-02Normalize some assist namesLukas Wirth-288/+299