about summary refs log tree commit diff
path: root/src
AgeCommit message (Collapse)AuthorLines
2025-02-03platform-support: document CPU baseline for x86-32 targetsRalf Jung-20/+20
2025-02-03Update booksrustbot-0/+0
2025-02-03rustdoc: clean up a bunch of ts-expected-error declarations in mainMichael Howell-148/+156
This mostly consists of handling potentially-null input and adding more global functions to the list of globals.
2025-02-03patch RfL jobRalf Jung-2/+2
2025-02-03platform-support docs: fix x87 errata footnotesRalf Jung-5/+5
2025-02-03ci: stop mysql before removing itMarcoIeni-0/+3
2025-02-03Merge pull request #19066 from alibektas/slice_pattern_type_inferenceLukas Wirth-31/+183
fix: try to infer array type from slice pattern
2025-02-03Merge pull request #19086 from Veykril/push-ponvylutpnwwLukas Wirth-6/+87
fix: Fix some mir eval/lowerings
2025-02-03Fix some mir eval/loweringsLukas Wirth-6/+87
2025-02-03Merge pull request #19085 from Veykril/push-sknwykqmlottLukas Wirth-6/+25
Do not use make use of `InferenceResult::has_errors` flag for mir building
2025-02-03ci: move dist-x86_64-msvc to windows 2025MarcoIeni-1/+1
2025-02-03Do not use make use of `InferenceResult::has_errors` flag for mir buildingLukas Wirth-6/+25
It generaly does not work as expected right now as we fallback type parameters to errors
2025-02-03Revert tests::patterns::infer_patternAli Bektas-37/+35
And apply requested changes
2025-02-03Add a test to monitor whats going onAli Bektas-6/+54
2025-02-03Make higher levels adapt Bodys exprs having ExprOrPatId valuesAli Bektas-33/+32
2025-02-03Make Pat::Range's start and end Option<ExprId>Ali Bektas-26/+48
2025-02-03Rollup merge of #136467 - onur-ozkan:override-default-profile-on-tarballs, ↵许杰友 Jieyou Xu (Joe)-1/+8
r=jieyouxu override default config profile on tarballs This is the same logic used in the Python script https://github.com/rust-lang/rust/blob/613bdd49978298648ed05ace086bd1ecad54b44a/src/bootstrap/bootstrap.py#L1273-L1274
2025-02-03Rollup merge of #136441 - jieyouxu:cleanup-is-rustdoc, r=compiler-errors许杰友 Jieyou Xu (Joe)-5/+2
[`compiletest`-related cleanups 1/7] Cleanup `is_rustdoc` logic and remove a useless path join in rustdoc-json runtest logic Reference for overall changes: https://github.com/rust-lang/rust/pull/136437 Part **1** of **7** of the *`compiletest`-related cleanups* PR series. ### Summary - Don't match on path when we already have test suite names. - Remove a useless path join. r? bootstrap (or compiler)
2025-02-03Rollup merge of #136438 - RalfJung:offset_from_ub_errors, r=oli-obk许杰友 Jieyou Xu (Joe)-3/+45
miri: improve error when offset_from preconditions are violated Fixes https://github.com/rust-lang/miri/issues/4143
2025-02-03Rollup merge of #136404 - fmease:rm-compiletest-relic-of-the-past, ↵许杰友 Jieyou Xu (Joe)-8/+0
r=Noratrieb,jieyouxu Remove a footgun-y feature / relic of the past from the compiletest DSL The compiletest DSL still features a historical remnant from the time when its directives were merely prefixed with `//` instead of `//`@`` when unknown directive names weren't rejected since they could just as well be part of prose: As an "optimization", it stops looking for directives once it stumbles upon a line which starts with either `fn` or `mod`. This is super footgun-y as it obviously leads to any seeming compiletest directives below `fn` and `mod` items getting completely ignored. See #136403 for a practical example. As well the assembly test updated in this PR. ~~Blocked on #136403.~~ (merged)
2025-02-03tree-wide: parallel: Fully removed all `Lrc`, replaced with `Arc`Askar Safin-102/+104
2025-02-03Merge pull request #19062 from darichey/scip-fix-module-namesLukas Wirth-100/+133
Fix scip indexing of module names
2025-02-03Split cache priming into distinct phasesLukas Wirth-34/+95
2025-02-03Use a different hir type for patterns in pattern types than we use in match ↵Oli Scherer-2/+18
patterns
2025-02-03compiletest: use `--stage` number directly instead of deriving from `--stage-id`许杰友 Jieyou Xu (Joe)-30/+28
Notably, this avoids having to do hacky string splitting based on `--stage-id`.
2025-02-03bootstrap: feed stage number via `--stage` to compiletest许杰友 Jieyou Xu (Joe)-8/+13
2025-02-03Auto merge of #133138 - azhogin:azhogin/target-modifiers, r=davidtwco,saethlinbors-4/+5
Target modifiers (special marked options) are recorded in metainfo Target modifiers (special marked options) are recorded in metainfo and compared to be equal in different linked crates. PR for this RFC: https://github.com/rust-lang/rfcs/pull/3716 Option may be marked as `TARGET_MODIFIER`, example: `regparm: Option<u32> = (None, parse_opt_number, [TRACKED TARGET_MODIFIER]`. If an TARGET_MODIFIER-marked option has non-default value, it will be recorded in crate metainfo as a `Vec<TargetModifier>`: ``` pub struct TargetModifier { pub opt: OptionsTargetModifiers, pub value_name: String, } ``` OptionsTargetModifiers is a macro-generated enum. Option value code (for comparison) is generated using `Debug` trait. Error example: ``` error: mixing `-Zregparm` will cause an ABI mismatch in crate `incompatible_regparm` --> $DIR/incompatible_regparm.rs:10:1 | LL | #![crate_type = "lib"] | ^ | = help: the `-Zregparm` flag modifies the ABI so Rust crates compiled with different values of this flag cannot be used together safely = note: `-Zregparm=1` in this crate is incompatible with `-Zregparm=2` in dependency `wrong_regparm` = help: set `-Zregparm=2` in this crate or `-Zregparm=1` in `wrong_regparm` = help: if you are sure this will not cause problems, use `-Cunsafe-allow-abi-mismatch=regparm` to silence this error error: aborting due to 1 previous error ``` `-Cunsafe-allow-abi-mismatch=regparm,reg-struct-return` to disable list of flags.
2025-02-03override default config profile on tarballsonur-ozkan-1/+8
This is the same logic used in the Python script https://github.com/rust-lang/rust/blob/613bdd49978298648ed05ace086bd1ecad54b44a/src/bootstrap/bootstrap.py#L1273-L1274 Signed-off-by: onur-ozkan <work@onurozkan.dev>
2025-02-03Merge from rustcThe Miri Cronjob Bot-276/+156
2025-02-03Preparing for merge from rustcThe Miri Cronjob Bot-1/+1
2025-02-03Remove a footgun-y feature / relic of the past from the compiletest DSLLeón Orell Valerian Liehr-8/+0
2025-02-03Merge from rustcThe rustc-dev-guide Cronjob Bot-852/+1570
2025-02-03Preparing for merge from rustcThe rustc-dev-guide Cronjob Bot-1/+1
2025-02-02Rollup merge of #136452 - RalfJung:miri-sync, r=RalfJungMatthias Krüger-545/+1347
Miri subtree update r? `@ghost` Unblocks https://github.com/rust-lang/rust/pull/122408 from the Miri side
2025-02-02Rollup merge of #136445 - bjorn3:diag_ctxt_cleanup, r=oli-obkMatthias Krüger-27/+13
Couple of cleanups to DiagCtxt and EarlyDiagCtxt
2025-02-02Rollup merge of #136339 - veera-sivarajan:ignore-arm-unknown-headers, r=jieyouxuMatthias Krüger-0/+4
CompileTest: Add Directives to Ignore `arm-unknown-*` Targets In #134626, I want to ignore `arm-unknown-*` targets because the LLVM IR for those looks very different compared to other targets: https://rust.godbolt.org/z/ssYMhdv4x. I can use `ignore-arm` but, I think, it would exclude large number of Apple devices. So this PR adds a few directives to ignore `arm-unknown-*` targets specifically.
2025-02-02Merge pull request #4142 from joboet/apple-futexRalf Jung-53/+626
shim Apple's futex primitives
2025-02-02shim Apple's futex primitivesjoboet-53/+626
This is necessary to unblock rust-lang/rust#122408. The documentation for these is available [here](https://developer.apple.com/documentation/os/os_sync_wait_on_address?language=objc). Because the futex wait operations (`os_sync_wait_on_address` et al.) return the number of remaining waiters after returning, this required some changes to the common futex infrastructure, which I've changed to take a callback instead of precalculating the return values.
2025-02-02Merge pull request #4172 from RalfJung/miri_get_backtraceRalf Jung-51/+14
miri_get_backtrace: stop supporting the v0 protocol
2025-02-02Auto merge of #136448 - matthiaskrgr:rollup-pdim5di, r=matthiaskrgrbors-234/+133
Rollup of 7 pull requests Successful merges: - #134272 (Remove rustc_encodable_decodable feature) - #136283 (Update encode_utf16 to mention it is native endian) - #136394 (Clean up MonoItem::instantiation_mode) - #136402 (diagnostics: fix borrowck suggestions for if/while let conditionals) - #136415 (Highlight clarifying information in "expected/found" error) - #136422 (Convert two `rustc_middle::lint` functions to `Span` methods.) - #136434 (rustc_allowed_through_unstable_modules: require deprecation message) r? `@ghost` `@rustbot` modify labels: rollup
2025-02-02Rollup merge of #136434 - ↵Matthias Krüger-10/+2
RalfJung:rustc_allowed_through_unstable_modules-deprecation-required, r=compiler-errors rustc_allowed_through_unstable_modules: require deprecation message This changes the `#[rustc_allowed_through_unstable_modules]` attribute so that a deprecation message (ideally directing people towards the stable path) is required.
2025-02-02Rollup merge of #136422 - nnethercote:convert-lint-functions, r=NoratriebMatthias Krüger-224/+131
Convert two `rustc_middle::lint` functions to `Span` methods. `rustc_middle` is a huge crate and it's always good to move stuff out of it. There are lots of similar methods already on `Span`, so these two functions, `in_external_macro` and `is_from_async_await`, fit right in. The diff is big because `in_external_macro` is used a lot by clippy lints. r? ``@Noratrieb``
2025-02-02files: make write take callback to store result, rather than writing to ↵Ralf Jung-69/+72
'dest' directly
2025-02-02files: make read take callback to store result, rather than writing to ↵Ralf Jung-69/+86
'dest' directly
2025-02-02Auto merge of #136376 - weihanglo:update-cargo, r=weihanglobors-0/+0
Update cargo 12 commits in cecde95c119a456c30e57d3e4b31fff5a7d83df4..0e3d73849ab8cbbab3ec5c65cbd555586cb21339 2025-01-24 17:15:24 +0000 to 2025-02-01 20:14:40 +0000 - Revert "Conditionally mark the `test` cfg as a well known cfg (rust-lang/cargo#15007)" (rust-lang/cargo#15132) - Don't suggest `cargo login` when using incompatible credental providers (rust-lang/cargo#15124) - chore: Update clap_complete (rust-lang/cargo#15121) - Move the changelog to the cargo book (rust-lang/cargo#15119) - Conditionally mark the `test` cfg as a well known cfg (rust-lang/cargo#15007) - fix broken links in the Cargo book (rust-lang/cargo#15109) - Fix a typo and touch up documentation (rust-lang/cargo#15108) - Fix shared_std_dependency_rebuild running on Windows (rust-lang/cargo#15111) - Fix warnings on Windows (rust-lang/cargo#15112) - fix(login): Deprecate CLI token (rust-lang/cargo#15057) - Update tests to fix nightly errors (rust-lang/cargo#15110) - Fix comment on Ord for SourceId (rust-lang/cargo#15103)
2025-02-02Replace ParseSess::set_dcx with DiagCtxt::set_emitterbjorn3-4/+4
Replacing the error emitter doesn't accidentally clear the error count.
2025-02-02Some cleanups around EarlyDiagCtxtbjorn3-3/+2
All callers of EarlyDiagCtxt::early_error now emit a fatal error.
2025-02-02Use fallback fluent bundle from inner emitter in SilentEmitterbjorn3-12/+2
2025-02-02Slightly simplify DiagCtxt::make_silentbjorn3-1/+1
2025-02-02Some cleanups around EarlyDiagCtxtbjorn3-10/+6
All callers of EarlyDiagCtxt::early_error now emit a fatal error.