about summary refs log tree commit diff
AgeCommit message (Collapse)AuthorLines
2025-09-10Improve `core::ops` coverageChristian Poveda-1/+74
2025-09-10Merge pull request #4575 from RalfJung/weakmem-originRalf Jung-343/+375
weak memory tests: add more info on where they come from, and test list of behaviors more thoroughly
2025-09-10Auto merge of #146418 - matthiaskrgr:rollup-za0lrux, r=matthiaskrgrbors-863/+1612
Rollup of 8 pull requests Successful merges: - rust-lang/rust#145327 (std: make address resolution weirdness local to SGX) - rust-lang/rust#145879 (default auto traits: use default supertraits instead of `Self: Trait` bounds on associated items) - rust-lang/rust#146123 (Suggest examples of format specifiers in error messages) - rust-lang/rust#146311 (Minor symbol comment fixes.) - rust-lang/rust#146322 (Make Barrier RefUnwindSafe again) - rust-lang/rust#146327 (Add tests for deref on pin) - rust-lang/rust#146340 (Strip frontmatter in fewer places) - rust-lang/rust#146342 (Improve C-variadic error messages: part 2) r? `@ghost` `@rustbot` modify labels: rollup
2025-09-10Less greedily parse `[const]` boundsLeón Orell Valerian Liehr-5/+33
2025-09-10Restore the test intention of several MBE trait bound modifier testsLeón Orell Valerian Liehr-100/+123
2025-09-10add release sequence testRalf Jung-3/+39
2025-09-10s390x: mark soft-float target feature as incompatibleRalf Jung-31/+45
2025-09-10tidy: check that error messages don't start with a capitalized letterSasha Pourcelot-4/+70
2025-09-10Pick up changes from robamu that I missed.Jonathan 'theJPster' Pallant-18/+28
From https://github.com/thejpster/rust/pull/1.
2025-09-10Update the arm-* and aarch64-* platform docs.Jonathan 'theJPster' Pallant-19/+264
The Rust Embedded Devices Working Group (wg-embedded) Arm Team (t-arm) agreed to listed as maintainers of: * aarch64-unknown-none * aarch64-unknown-none-softfloat * armv7a-none-eabi * armv7r-none-eabi * armv7r-none-eabihf The aarch64-unknown-none* target didn't have a page so I added it. wg-embedded t-arm did not want to take over: * armebv7r-none-eabi * armebv7r-none-eabihf So I gave them their own target page. The current maintainer remains.
2025-09-10fixup no_{core,std} handling codeJana Dönszelmann-8/+2
2025-09-10fixup no_{core,std} handling codeJana Dönszelmann-92/+207
2025-09-10Rollup merge of #146342 - folkertdev:c-variadic-errors-take-3, r=workingjubileeMatthias Krüger-167/+357
Improve C-variadic error messages: part 2 tracking issue: https://github.com/rust-lang/rust/issues/44930 a reimplementation of https://github.com/rust-lang/rust/pull/143546 that builds on https://github.com/rust-lang/rust/pull/146165. This PR - disallows coroutines (e.g. `async fn`) from having a `...` argument - disallows associated functions (both in traits and standard impl blocks) from having a `...` argument - splits up a generic "ill-formed C-variadic function" into specific errors about using an incorrect ABI, not specifying an ABI, or missing the unsafe keyword C-variadic coroutines probably don't make sense? C-variadic functions are for FFI purposes, combining that with async functions seems weird. For associated functions, we're just cutting scope. It's probably fine, but it's probably better to explicitly allow it. So for now, at least give a more targeted error message. Made to be reviewed commit-by-commit. cc `@workingjubilee` r? compiler
2025-09-10Rollup merge of #146340 - fmease:frontmatter-containment, r=fee1-dead,UrgauMatthias Krüger-7/+9
Strip frontmatter in fewer places * Stop stripping frontmatter in `proc_macro::Literal::from_str` (RUST-146132) * Stop stripping frontmatter in expr-ctxt (but not item-ctxt!) `include`s (RUST-145945) * Stop stripping shebang (!) in `proc_macro::Literal::from_str` * Not a breaking change because it did compare spans already to ensure there wasn't extra whitespace or comments (`Literal::from_str("#!\n0")` already yields `Err(_)` thankfully!) * Stop stripping frontmatter+shebang inside some rustdoc code where it doesn't make any observable difference (see self review comments) * (Stop stripping frontmatter+shebang inside internal test code) Fixes https://github.com/rust-lang/rust/issues/145945. Fixes https://github.com/rust-lang/rust/issues/146132. r? fee1-dead
2025-09-10Rollup merge of #146340 - fmease:frontmatter-containment, r=fee1-dead,UrgauMatthias Krüger-128/+226
Strip frontmatter in fewer places * Stop stripping frontmatter in `proc_macro::Literal::from_str` (RUST-146132) * Stop stripping frontmatter in expr-ctxt (but not item-ctxt!) `include`s (RUST-145945) * Stop stripping shebang (!) in `proc_macro::Literal::from_str` * Not a breaking change because it did compare spans already to ensure there wasn't extra whitespace or comments (`Literal::from_str("#!\n0")` already yields `Err(_)` thankfully!) * Stop stripping frontmatter+shebang inside some rustdoc code where it doesn't make any observable difference (see self review comments) * (Stop stripping frontmatter+shebang inside internal test code) Fixes https://github.com/rust-lang/rust/issues/145945. Fixes https://github.com/rust-lang/rust/issues/146132. r? fee1-dead
2025-09-10Rollup merge of #146327 - Darksonn:pin-deref-tests, r=lcnrMatthias Krüger-0/+382
Add tests for deref on pin Tests split out from rust-lang/rust#145608. r? `@lcnr`
2025-09-10Rollup merge of #146322 - weiznich:fix/146087, r=joboetMatthias Krüger-0/+13
Make Barrier RefUnwindSafe again This commit manually implements `RefUnwindSafe` for `std::sync::Barrier` to fix rust-lang/rust#146087. This is a fix for a regression indroduced by https://github.com/rust-lang/rust/commit/e95db591a4550e28ad92660b753ad85b89271882
2025-09-10Rollup merge of #146311 - nnethercote:symbol-comments, r=petrochenkovMatthias Krüger-7/+6
Minor symbol comment fixes. - The empty symbol is no longer a keyword. - I don't think any of the special reserved identifiers are used for error recovery. r? ```@petrochenkov```
2025-09-10Rollup merge of #146123 - IoaNNUwU:issue-68293, r=estebankMatthias Krüger-0/+143
Suggest examples of format specifiers in error messages Format macro now suggests adding `{}` if no formatting specifiers are present. It also gives an example: ```rust LL | println!("Hello", "World"); | ------- ^^^^^^^ argument never used | | | formatting specifier missing | = note: format specifiers use curly braces: `{}` help: consider adding format specifier | LL | println!("Hello{}", "World"); | ++ ``` When one or more `{}` are present, it doesn't show 'format specifiers use curly braces: `{}`' and example, just small hint on how many you missing: ```rust LL | println!("list: {}", 1, 2, 3); | ---------- ^ ^ argument never used | | | | | argument never used | multiple missing formatting specifiers | = help: consider adding 2 format specifiers ``` Original issue: rust-lang/rust#68293 Based on discussion in this PR: rust-lang/rust#76443 Let me know if something is missing
2025-09-10Rollup merge of #145879 - Bryanskiy:supertraits-2, r=lcnrMatthias Krüger-345/+209
default auto traits: use default supertraits instead of `Self: Trait` bounds on associated items First commit: the motivation has been discussed [here](https://github.com/rust-lang/rust/pull/144679). Second commit: the only new places where new implicit `DefaultAutoTrait` bounds are generated are supertraits and trait object so `?Trait` syntax should be extended to these places only. r? `@lcnr`
2025-09-10Rollup merge of #145327 - joboet:net-addr-sgx-hack, r=tgross35Matthias Krüger-216/+276
std: make address resolution weirdness local to SGX Currently, the implementations of `TcpStream::connect` and its cousins take an `io::Result<&SocketAddr>` as argument, which is very weird, as most of them then `?`-try the result immediately to access the actual address. This weirdness is however necessitated by a peculiarity of the SGX networking implementation: SGX doesn't support DNS resolution but rather accepts hostnames in the same place as socket addresses. So, to make e.g. ```rust TcpStream::connect("example.com:80")` ``` work, the DNS lookup returns a special error (`NonIpSockAddr`) instead, which contains the hostname being looked up. When `.to_socket_addrs()` fails, the `each_addr` function used to select an address will pass the error to the inner `TcpStream::connect` implementation, which in SGX's case will inspect the error and try recover the hostname from it. If that succeeds, it continues with the found hostname. This is pretty obviously a terrible hack and leads to buggy code (for instance, when users use the result of `.to_socket_addrs()` in their own `ToSocketAddrs` implementation to select from a list of possible URLs, the only URL used will be that of the last item tried). Still, without changes to the SGX usercall ABI, it cannot be avoided. Therefore, this PR aims to minimise the impact of that weirdness and remove it from all non-SGX platforms. The inner `TcpStream::connect`, et al. functions now receive the `ToSocketAddrs` type directly and call `each_addr` (which is moved to `sys::net::connection`) themselves. On SGX, the implementation uses a special `each_addr` which contains the whole pass-hostname-through-error hack. As well as making the code cleaner, this also opens up the possibility of reusing newly created sockets even if a connection request fails – but I've left that for another PR. CC `@raoulstrackx`
2025-09-10Simplify code for `find_raw_urls`Guillaume Gomez-17/+11
2025-09-10Merge pull request #2516 from lolbinarycat/patch-4Tshepang Mbambo-0/+1
glossary: add entry for rustbuild
2025-09-10Add new ui tests for `rustdoc::bare_urls`Guillaume Gomez-1/+97
2025-09-10Improve suggestion in case a bare URL is surrounded by bracketsGuillaume Gomez-13/+40
2025-09-10Add missing documentation for running tests with GCC backendGuillaume Gomez-1/+32
2025-09-10glossary(rustbuild): reword according to code reviewlolbinarycat-1/+1
Co-authored-by: Tshepang Mbambo <hopsi@tuta.io>
2025-09-10tidy: Add specific line info for allowed dependenciesclubby789-9/+25
2025-09-10tidy: More accurate permitted dependencies locationclubby789-2/+15
2025-09-10glossary: add entry for rustbuildlolbinarycat-0/+1
2025-09-10tidy: Print crate name on dependency errorclubby789-1/+2
2025-09-10core::ptr: deduplicate docs for as_ref, addr, and as_uninit_refbinarycat-134/+111
also add INFO.md file explaining the purpouse of the ptr/docs dir.
2025-09-10this apparently needs more test roundsRalf Jung-3/+11
2025-09-10tidy: Introduce `WorkspaceInfo` struct for deps informationclubby789-36/+73
2025-09-10move all weak memory tests into their folderRalf Jung-2/+2
2025-09-10also use nicer check_all_outcomes in float_nanRalf Jung-177/+142
2025-09-10loongarch: Align intrinsic signatures with LLVMWANG Rui-16/+20
2025-09-10Auto merge of #146409 - matthiaskrgr:rollup-thju381, r=matthiaskrgrbors-97/+530
Rollup of 5 pull requests Successful merges: - rust-lang/rust#144765 (inclusive `Range`s: change `end` to `last`) - rust-lang/rust#146178 (Implement `#[rustc_align_static(N)]` on `static`s) - rust-lang/rust#146368 (CI: rfl: move job forward to Linux v6.17-rc5 to remove temporary commits) - rust-lang/rust#146378 (Update wasm-component-ld to 0.5.17) - rust-lang/rust#146391 (Trim paths less in MIR dumping) r? `@ghost` `@rustbot` modify labels: rollup
2025-09-10refactor weak-mem test to list all expected executionsRalf Jung-103/+114
2025-09-10ensure we do not see the inconsistent execution from Figure 8Ralf Jung-1/+10
2025-09-10weak memory tests: add more info on where they come fromRalf Jung-11/+14
2025-09-10clarify current MIR semantics re: overlapping assignmentRalf Jung-4/+15
and double-check that we match it in codegen
2025-09-10interpret: fix overlapping aggregate initializationRalf Jung-11/+77
2025-09-10std: only test `dlsym!` on platforms where it is actually usedjoboet-0/+10
`dlsym` doesn't work for finding libc symbols on platforms like linux-musl, so the test will fail.
2025-09-10bless miri testsjoboet-24/+24
2025-09-10std: move `thread` into `sys`joboet-1042/+842
2025-09-10Unify and deduplicate bits conv float testsRomain Perier-110/+63
2025-09-10Rollup merge of #146391 - beepster4096:trimnt, r=saethlinMatthias Krüger-10/+12
Trim paths less in MIR dumping With this PR, the paths MIR dump filters and that are printed at the start of a dump file are no longer trimmed. They don't include the crate that is being compiled, however.
2025-09-10Rollup merge of #146378 - alexcrichton:update-wasm-component-ld, r=lqdMatthias Krüger-26/+26
Update wasm-component-ld to 0.5.17 Keeping this up-to-date as the project itself, and its dependencies, are updated.
2025-09-10Rollup merge of #146368 - ojeda:rfl, r=lqdMatthias Krüger-3/+1
CI: rfl: move job forward to Linux v6.17-rc5 to remove temporary commits v6.17-rc5 contains the equivalent of the two commits we had here, thus move the Rust for Linux job forward to that so that we don't need the temporary commits anymore. r? ```@lqd``` ```@Kobzol``` try-job: x86_64-rust-for-linux ```@rustbot``` label A-rust-for-linux ```@bors``` try