Commit Graph

152776 Commits

Author SHA1 Message Date
Ralf Jung
7cb5a799af make sure the new function is tested 2024-09-28 21:34:27 +02:00
David Carlier
f14f72eb34
implements arc4random_buf shim for freebsd/solarish platforms.
close #3914
2024-09-28 20:02:54 +01:00
Guillaume Gomez
632fed891d Improve mistyped docblock attribute warning messages 2024-09-28 18:38:11 +02:00
Guillaume Gomez
0956f69caf Add warning if standalone-crate is mistyped 2024-09-28 18:38:11 +02:00
Guillaume Gomez
35f24d0d14 Improve code for codeblock invalid attributes 2024-09-28 18:38:11 +02:00
Guillaume Gomez
cdf2a8ffc5 Rename standalone doctest attribute into standalone-crate 2024-09-28 18:38:10 +02:00
Guillaume Gomez
62cbd2b7bd Update browser-ui-test version to 0.18.1 2024-09-28 18:03:47 +02:00
Matthias Krüger
1d29bfc562
Rollup merge of #130973 - matthiaskrgr:crash_rename, r=jieyouxu
compiletest: rename "runtest/crash.rs" to "runtest/crashes.rs" to be in line with the test directory

r? jieyouxu
2024-09-28 15:11:22 +02:00
Matthias Krüger
f33fa3f57b
Rollup merge of #130918 - onur-ozkan:better-llvm-submodule-handling, r=Kobzol
simplify LLVM submodule handling

Fixes #130906.
2024-09-28 15:11:21 +02:00
Matthias Krüger
5e4eab454a
Rollup merge of #128778 - RalfJung:atomic-read-read-races, r=Mark-Simulacrum
atomics: allow atomic and non-atomic reads to race

We currently define our atomics in terms of C++ `atomic_ref`. That has the unfortunate side-effect of making it UB for an atomic and a non-atomic read to race (concretely, [this code](https://play.rust-lang.org/?version=stable&mode=debug&edition=2021&gist=d1a743774e60923db33def7fe314d754) has UB). There's really no good reason for this, all the academic models of the C++ memory model I am aware of allow this -- C++ just disallows this because of their insistence on an "object model" with typed memory, where `atomic_ref` temporarily creates an "atomic object" that may not be accesses via regular non-atomic operations.

So instead of tying our operations to `atomic_ref`, let us tie them directly to the underlying C++ memory model. I am not sure what is the best way to phrase this, so here's a first attempt.

We also carve out an exception from the "no mixed-size atomic accesses" rule to permit mixed-size atomic reads -- given that we permit mixed-size non-atomic reads, it seems odd that this would be disallowed for atomic reads. However, when an atomic write races with any other atomic operation, they must use the same size.

With this change, it is finally the case that every non-atomic access can be replaced by an atomic access without introducing UB.

Cc `@rust-lang/opsem` `@chorman0773` `@m-ou-se` `@WaffleLapkin` `@Amanieu`

Fixes https://github.com/rust-lang/unsafe-code-guidelines/issues/483
2024-09-28 15:11:21 +02:00
Ralf Jung
c1401daf3f add tests for validity of Box with custom allocator 2024-09-28 13:44:13 +02:00
bors
612796c420 Auto merge of #130964 - matthiaskrgr:rollup-suriuub, r=matthiaskrgr
Rollup of 8 pull requests

Successful merges:

 - #125404 (Fix `read_buf` uses in `std`)
 - #130866 (Allow instantiating object trait binder when upcasting)
 - #130922 (Reference UNSPECIFIED instead of INADDR_ANY in join_multicast_v4)
 - #130924 (Make clashing_extern_declarations considering generic args for ADT field)
 - #130939 (rustdoc: update `ProcMacro` docs section on helper attributes)
 - #130940 (Revert space-saving operations)
 - #130944 (Allow instantiating trait object binder in ptr-to-ptr casts)
 - #130953 (Rename a few tests to make tidy happier)

r? `@ghost`
`@rustbot` modify labels: rollup
2024-09-28 10:46:56 +00:00
Matthias Krüger
84c944c6ff compiletest: rename "runtest/crash.rs" to "runtest/crashes.rs" to be in line with the test directory
r? jieyouxu
2024-09-28 12:45:54 +02:00
Ralf Jung
96be76bf53 Further clarificarion for atomic and UnsafeCell docs:
- UnsafeCell: mention the term "data race", and reference the data race definition
- atomic: failing RMWs are just reads, reorder and reword docs
2024-09-28 12:14:59 +02:00
Ralf Jung
6ca5e29e49 allow mixed-size atomic reads 2024-09-28 12:14:56 +02:00
Ralf Jung
ed417f44f8 miri: no longer complain about read-read races 2024-09-28 12:05:29 +02:00
Matthias Krüger
5d7db93600
Rollup merge of #130953 - workingjubilee:rename-a-few-ctypes-tests, r=fee1-dead
Rename a few tests to make tidy happier

A somewhat random smattering of tests that I have recently looked at, and thus had cause to research and write down the reason for their existence.
2024-09-28 09:35:12 +02:00
Matthias Krüger
6b5cd4e84e
Rollup merge of #130940 - workingjubilee:remove-space-saving-operations, r=Kobzol
Revert space-saving operations

The "all of our artifacts" `mv` seems like it may save enough space to matter sometimes, since it can range up to a gigabyte of difference, if memory serves. For the rest, I think we're good.

try-job: dist-aarch64-apple
2024-09-28 09:35:11 +02:00
Matthias Krüger
7e32221aee
Rollup merge of #130939 - obi1kenobi:patch-2, r=aDotInTheVoid
rustdoc: update `ProcMacro` docs section on helper attributes

I believe the mention of attribute macros in the section on proc macro helper attributes is erroneous. As far as I can tell, attribute macros cannot define helper attributes.

The following attribute macro is not valid (fails to build), no matter how I try to define (or skip defining) the helpers:
```rust
#[proc_macro_attribute(attributes(helper))]
pub fn attribute_helpers(_attr: TokenStream, item: TokenStream) -> TokenStream {
    item
}
```

The [language reference](https://doc.rust-lang.org/reference/procedural-macros.html#attribute-macros) also doesn't seem to mention attribute macro helpers. The helpers subsection is inside the section on derive macros.
2024-09-28 09:35:11 +02:00
bors
851f698682 Auto merge of #130874 - klensy:bumpme, r=jieyouxu
bump few deps

Bumps cargo_metadata, thorin-dwp, windows.

Should dedupe some crates around.
2024-09-28 05:15:29 +00:00
bors
b6576e3f63 Auto merge of #130948 - GuillaumeGomez:subtree-update, r=GuillaumeGomez
GCC backend subtree update

We just finished the [last sync](https://github.com/rust-lang/rustc_codegen_gcc/pull/556) so time to sync back.

cc `@antoyo`
2024-09-28 02:48:40 +00:00
bors
1b6d674773 Auto merge of #130929 - weihanglo:update-cargo, r=weihanglo
Update cargo

19 commits in eaee77dc1584be45949b75e4c4c9a841605e3a4b..80d82ca22abbee5fb7b51fa1abeb1ae34e99e88a
2024-09-19 21:10:23 +0000 to 2024-09-27 17:56:01 +0000
- Update cc to 1.1.22 (rust-lang/cargo#14607)
- feat: lockfile path implies --locked on cargo install (rust-lang/cargo#14556)
- feat(toml): Add `autolib` (rust-lang/cargo#14591)
- fix: correct error count for `cargo check --message-format json` (rust-lang/cargo#14598)
- test: relax panic output assertion (rust-lang/cargo#14602)
- feat(timings): support dark color scheme in HTML output (rust-lang/cargo#14588)
- feat: add CARGO_MANIFEST_PATH env variable (rust-lang/cargo#14404)
- fix(config): Don't double-warn about `$CARGO_HOME/config` (rust-lang/cargo#14579)
- fix(cargo-rustc): give trailing flags higher precedence on nightly (rust-lang/cargo#14587)
- feat: make lockfile v4 the default (rust-lang/cargo#14595)
- perf: Improve quality of completion performance traces (rust-lang/cargo#14592)
- test: Remove completion tests (rust-lang/cargo#14590)
- feat: Add support for completing `cargo update <TAB>` (rust-lang/cargo#14552)
- test: Migrate remaining with_stdout/with_stderr calls (rust-lang/cargo#14577)
- fix(resolve): Improve multi-MSRV workspaces (rust-lang/cargo#14569)
- chore: Bump MSRV to 1.81 (rust-lang/cargo#14585)
- Add a `--dry-run` flag to the `install` command (rust-lang/cargo#14280)
- fix(resolve): Don't list transitive, incompatible dependencies as available (rust-lang/cargo#14568)
- feat(complete): Upgrade clap_complete (rust-lang/cargo#14573)
2024-09-28 00:18:59 +00:00
Jubilee Young
19d5568ad3 tests: issue-34798.rs => allow-phantomdata-in-ffi.rs 2024-09-27 14:29:34 -07:00
bors
83e4e18896 Auto merge of #130946 - matthiaskrgr:rollup-ia4mf0y, r=matthiaskrgr
Rollup of 6 pull requests

Successful merges:

 - #130718 (Cleanup some known-bug issues)
 - #130730 (Reorganize Test Headers)
 - #130826 (Compiler: Rename "object safe" to "dyn compatible")
 - #130915 (fix typo in triagebot.toml)
 - #130926 (Update cc to 1.1.22 in library/)
 - #130932 (etc: Add sample rust-analyzer configs for eglot & helix)

r? `@ghost`
`@rustbot` modify labels: rollup
2024-09-27 21:23:29 +00:00
Jubilee Young
a1fbf251b8 tests: issue-14309.* => repr-rust-is-undefined.* 2024-09-27 14:20:31 -07:00
Jubilee Young
bcf8cf2943 tests: issue-69488.rs => load-preserves-partial-init-issue-69488.rs 2024-09-27 14:18:11 -07:00
Guillaume Gomez
d0102fdd0f Update libgccjit version used in CI 2024-09-27 23:05:29 +02:00
Trevor Gross
3fb21f38fd Bump cc and run cargo update for bootstrap
Bump `cc` to 1.1.22, which includes a caching fix. Also run `cargo
update` which does a minor increment on a few dependencies.
2024-09-27 16:21:03 -04:00
Weihang Lo
f0677e7d39
Update cargo 2024-09-27 15:45:11 -04:00
Matthias Krüger
243c6d67ff
Rollup merge of #130932 - mrkajetanp:editors, r=jieyouxu
etc: Add sample rust-analyzer configs for eglot & helix

LSP configuration in editors like Emacs (eglot) and helix does not
use the same JSON format as vscode and vim do. It is not obvious
how to set up LSP for rustc in those editors and the dev guide currently
does not cover them. Adding sample configuration files for those editors
alongside the currently existing JSON one would be helpful.

I figured having those included in the repo like the JSON one might save
someone some time and frustration otherwise spent on trying to get the
more niche editors' LSP to work properly. I'll add a section in the dev
guide too.
2024-09-27 21:35:10 +02:00
Matthias Krüger
22c1009e7f
Rollup merge of #130926 - ChrisDenton:cc-1-1-22, r=tgross35
Update cc to 1.1.22 in library/

r? `@ghost`

try-job: x86_64-msvc
2024-09-27 21:35:09 +02:00
Matthias Krüger
a935064fae
Rollup merge of #130826 - fmease:compiler-mv-obj-safe-dyn-compat, r=compiler-errors
Compiler: Rename "object safe" to "dyn compatible"

Completed T-lang FCP: https://github.com/rust-lang/lang-team/issues/286#issuecomment-2338905118.
Tracking issue: https://github.com/rust-lang/rust/issues/130852

Excludes `compiler/rustc_codegen_cranelift` (to be filed separately).
Includes Stable MIR.

Regarding https://github.com/rust-lang/rust/labels/relnotes, I guess I will manually open a https://github.com/rust-lang/rust/labels/relnotes-tracking-issue since this change affects everything (compiler, library, tools, docs, books, everyday language).

r? ghost
2024-09-27 21:35:08 +02:00
Jubilee Young
a2a4ea0850 Partially revert "ci: Use mv instead of cp in upload step"
This partially reverts commit fe7c97c2e7.

I kept a mv, not a cp, for the one that shuffles major artifacts around,
because the size of those artifacts are big enough to matter, sometimes.
I don't think the diagnostic info will be that heavy, by comparison.
2024-09-27 12:02:02 -07:00
Jubilee Young
282d04489a Revert "ci: Try to remove unused Xcode dirs"
This reverts commit 06f49f6d53.
2024-09-27 11:45:59 -07:00
Predrag Gruevski
3b9db47f07
rustdoc: update ProcMacro docs section on helper attributes
I believe the mention of attribute macros in the section on proc macro helper attributes is erroneous. As far as I can tell, attribute macros cannot define helper attributes.

The following attribute macro is not valid (fails to build), no matter how I try to define (or skip defining) the helpers:
```rust
#[proc_macro_attribute(attributes(helper))]
pub fn attribute_helpers(_attr: TokenStream, item: TokenStream) -> TokenStream {
    item
}
```

The [language reference](https://doc.rust-lang.org/reference/procedural-macros.html#attribute-macros) also doesn't seem to mention attribute macro helpers. The helpers subsection is inside the section on derive macros.
2024-09-27 14:34:48 -04:00
Chris Denton
74d7b226ee
Update cc to 1.1.22 2024-09-27 17:40:50 +00:00
Matthias Krüger
56e5bfac28
Rollup merge of #130459 - onur-ozkan:#130449, r=albertlarsan68
delete sub build directory "debug" to not delete the change-id file

Fixes #130449
2024-09-27 19:07:59 +02:00
binarycat
94a3f96f71 rustdoc: lists items that contain multiple paragraphs are more clear
fixes https://github.com/rust-lang/rust/issues/130622
2024-09-27 12:43:34 -04:00
Kajetan Puchalski
6453f7e514
etc: Add rust-analyzer configs for eglot & helix
LSP configuration in editors like Emacs (eglot) and helix does not
use the same JSON format as vscode and vim do. It is not obvious
how to set up LSP for rustc in those editors and the dev guide currently
does not cover them. Adding sample configuration files for those editors
alongside the currently existing JSON one would be helpful.
2024-09-27 17:28:19 +01:00
onur-ozkan
cd1b245c99 improve LLVM submodule handling logic in llvm::prebuilt_llvm_config
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2024-09-27 16:09:26 +03:00
Urgau
61ef9838df compiletest: fallback to the original path if it's not a symlink 2024-09-27 14:05:24 +02:00
Urgau
8075ddb98e Implement RFC3137 trim-paths sysroot changes 2024-09-27 13:27:54 +02:00
Chris Denton
6c852d3ec4
Allow shlex stdlib dependency 2024-09-27 10:06:48 +00:00
bors
a3f76a26e0 Auto merge of #130857 - lukas-code:no-clones-allowed, r=notriddle
rustdoc perf: clone `clean::Item` less

In https://github.com/rust-lang/rust/pull/130798, I caused a small perf regression for rustdoc (see https://github.com/rust-lang/rust/pull/130807#issuecomment-2373116917), so here is a small improvement to make up for it 😺.

This change is actually unrelated to the minor perf regression in `Item::stability` and instead fixes a more relevant perf problem that I found while investigating: For certain crates with many impls on type aliases, we unnecessarily cloned large `clean::Item`s multiple times -- now we just borrow them.
2024-09-27 09:50:52 +00:00
klensy
62d92e651e bless tidy 2024-09-27 09:23:18 +03:00
klensy
26c09b6553 bump few deps
cargo_metadata, thorin-dwp, windows
2024-09-27 09:23:05 +03:00
Jubilee
b463bd1f27
Rollup merge of #130912 - estebank:point-at-arg-type, r=compiler-errors
On implicit `Sized` bound on fn argument, point at type instead of pattern

Instead of

```
error[E0277]: the size for values of type `(dyn ThriftService<(), AssocType = _> + 'static)` cannot be known at compilation time
  --> $DIR/issue-59324.rs:23:20
   |
LL | fn with_factory<H>(factory: dyn ThriftService<()>) {}
   |                    ^^^^^^^ doesn't have a size known at compile-time
```

output

```
error[E0277]: the size for values of type `(dyn ThriftService<(), AssocType = _> + 'static)` cannot be known at compilation time
  --> $DIR/issue-59324.rs:23:29
   |
LL | fn with_factory<H>(factory: dyn ThriftService<()>) {}
   |                             ^^^^^^^^^^^^^^^^^^^^^ doesn't have a size known at compile-time
```
2024-09-26 22:20:57 -07:00
Jubilee
6b0c897499
Rollup merge of #130911 - notriddle:notriddle/suggest-wrap-parens-fn-pointer, r=compiler-errors
diagnostics: wrap fn cast suggestions in parens when needed

Fixes #121632
2024-09-26 22:20:56 -07:00
Jubilee
dfb377691b
Rollup merge of #130889 - tgross35:rustbook-cargo-update, r=tgross35
Weekly `cargo update`: only `rustbook`

We are having problems getting updates to merge due to CI failures. I took only the rustbook portion of https://github.com/rust-lang/rust/pull/129538 and put it into this PR, which hopefully should be able to successfully merge on its own.

Original message:

```
cargo update: rustbook

rustbook dependencies:
     Locking 70 packages to latest compatible versions
    Removing adler v1.0.2
      Adding adler2 v2.0.0
    Updating anstream v0.6.14 -> v0.6.15
    Updating anstyle v1.0.7 -> v1.0.8
    Updating anstyle-parse v0.2.4 -> v0.2.5
    Updating anstyle-query v1.1.0 -> v1.1.1
    Updating anstyle-wincon v3.0.3 -> v3.0.4
    Updating anyhow v1.0.86 -> v1.0.89
    Removing base64 v0.22.1
    Updating bstr v1.9.1 -> v1.10.0
      Adding byteorder v1.5.0
    Updating cc v1.1.5 -> v1.1.21
    Updating clap v4.5.9 -> v4.5.18
    Updating clap_builder v4.5.9 -> v4.5.18
    Updating clap_complete v4.5.8 -> v4.5.29
    Updating clap_derive v4.5.8 -> v4.5.18
    Updating clap_lex v0.7.1 -> v0.7.2
    Updating colorchoice v1.0.1 -> v1.0.2
    Updating core-foundation-sys v0.8.6 -> v0.8.7
    Updating cpufeatures v0.2.12 -> v0.2.14
      Adding dateparser v0.2.1
    Removing deranged v0.3.11
    Updating env_filter v0.1.0 -> v0.1.2
    Updating env_logger v0.11.3 -> v0.11.5
    Updating fastrand v2.1.0 -> v2.1.1
    Updating flate2 v1.0.30 -> v1.0.33
    Updating iana-time-zone v0.1.60 -> v0.1.61
    Updating indexmap v2.2.6 -> v2.5.0
    Updating is_terminal_polyfill v1.70.0 -> v1.70.1
    Updating js-sys v0.3.69 -> v0.3.70
      Adding lazy_static v1.5.0
    Updating libc v0.2.155 -> v0.2.158
    Removing linked-hash-map v0.5.6
    Updating mdbook-i18n-helpers v0.3.4 -> v0.3.5
    Updating miniz_oxide v0.7.4 -> v0.8.0
    Updating normpath v1.2.0 -> v1.3.0
    Removing num-conv v0.1.0
    Updating opener v0.7.1 -> v0.7.2
    Updating pest v2.7.11 -> v2.7.13
    Updating pest_derive v2.7.11 -> v2.7.13
    Updating pest_generator v2.7.11 -> v2.7.13
    Updating pest_meta v2.7.11 -> v2.7.13
    Removing plist v1.7.0
    Removing powerfmt v0.2.0
    Updating ppv-lite86 v0.2.17 -> v0.2.20
      Adding pulldown-cmark v0.11.3 (latest: v0.12.1)
      Adding pulldown-cmark-escape v0.11.0
      Adding pulldown-cmark-to-cmark v15.0.1 (latest: v17.0.0)
    Removing quick-xml v0.32.0
    Updating quote v1.0.36 -> v1.0.37
    Updating redox_syscall v0.5.3 -> v0.5.4
    Updating regex v1.10.5 -> v1.10.6
    Updating rustix v0.38.34 -> v0.38.37
    Updating serde v1.0.204 -> v1.0.210
    Updating serde_derive v1.0.204 -> v1.0.210
    Updating serde_json v1.0.120 -> v1.0.128
    Updating serde_spanned v0.6.6 -> v0.6.7
    Updating syn v2.0.71 -> v2.0.77
    Updating tempfile v3.10.1 -> v3.12.0
    Updating thiserror v1.0.62 -> v1.0.63
    Updating thiserror-impl v1.0.62 -> v1.0.63
    Removing time v0.3.36
    Removing time-core v0.1.2
    Removing time-macros v0.2.18
    Updating toml v0.8.14 -> v0.8.19
    Updating toml_datetime v0.6.6 -> v0.6.8
    Updating toml_edit v0.22.15 -> v0.22.21
    Updating unicode-ident v1.0.12 -> v1.0.13
    Updating unicode-normalization v0.1.23 -> v0.1.24
    Updating unicode-width v0.1.13 -> v0.1.14 (latest: v0.2.0)
    Updating version_check v0.9.4 -> v0.9.5
    Updating wasm-bindgen v0.2.92 -> v0.2.93
    Updating wasm-bindgen-backend v0.2.92 -> v0.2.93
    Updating wasm-bindgen-macro v0.2.92 -> v0.2.93
    Updating wasm-bindgen-macro-support v0.2.92 -> v0.2.93
    Updating wasm-bindgen-shared v0.2.92 -> v0.2.93
    Updating winapi-util v0.1.8 -> v0.1.9
      Adding windows-sys v0.59.0
    Updating winnow v0.6.13 -> v0.6.18
    Removing yaml-rust v0.4.5
      Adding zerocopy v0.7.35
      Adding zerocopy-derive v0.7.35
note: pass `--verbose` to see 26 unchanged dependencies behind latest
```
2024-09-26 22:20:55 -07:00
Jubilee
0b53cecb79
Rollup merge of #130706 - GuillaumeGomez:remove-unneeded-jinja-comments, r=notriddle
[rustdoc] Remove unneeded jinja comments

This is a follow-up of https://github.com/rust-lang/rust/pull/130585.

Since we now check for the jinja comments we missed, we can now check for the jinja comments which are unneeded. It will make the parsing and therefore the compilation a tiny bit faster (well, if anyone sees a difference haha). The real goal is mostly to have easier to read template files. 😉

r? ``@notriddle``
2024-09-26 22:20:54 -07:00
Michael Howell
c48b0d4eb4 diagnostics: wrap fn cast suggestions in parens
Fixes #121632
2024-09-26 18:17:52 -07:00
Esteban Küber
c7d171d771 On implicit Sized bound on fn argument, point at type instead of pattern
Instead of

```
error[E0277]: the size for values of type `(dyn ThriftService<(), AssocType = _> + 'static)` cannot be known at compilation time
  --> $DIR/issue-59324.rs:23:20
   |
LL | fn with_factory<H>(factory: dyn ThriftService<()>) {}
   |                    ^^^^^^^ doesn't have a size known at compile-time
```

output

```
error[E0277]: the size for values of type `(dyn ThriftService<(), AssocType = _> + 'static)` cannot be known at compilation time
  --> $DIR/issue-59324.rs:23:29
   |
LL | fn with_factory<H>(factory: dyn ThriftService<()>) {}
   |                             ^^^^^^^^^^^^^^^^^^^^^ doesn't have a size known at compile-time
```
2024-09-27 00:45:02 +00:00
Guillaume Gomez
575df06a8b Remove unneeded jinja comments in templates 2024-09-27 00:58:13 +02:00
Guillaume Gomez
69150396bf Extend rustdoc template check to detect unneeded comments 2024-09-27 00:53:04 +02:00
bors
58420a065b Auto merge of #130907 - GuillaumeGomez:rollup-423r4i4, r=GuillaumeGomez
Rollup of 11 pull requests

Successful merges:

 - #130279 (Document subtleties of `ManuallyDrop`)
 - #130517 (Add the library workspace to the suggested rust-analyzer config)
 - #130820 (Fix diagnostics for coroutines with () as input.)
 - #130833 (Fix the misleading diagnostic for `let_underscore_drop` on type without `Drop` implementation)
 - #130845 (Utf8Chunks: add link to Utf8Chunk)
 - #130850 (Pass Module Analysis Manager to Standard Instrumentations)
 - #130861 (Use `mem::offset_of!` for `sockaddr_un.sun_path`)
 - #130862 (rustdoc: do not animate :target when user prefers reduced motion)
 - #130868 (Update FIXME comment in s390x_unknown_linux_*.rs)
 - #130879 (Pass correct HirId to late_bound_vars in diagnostic code)
 - #130880 (add missing FIXME(const-hack))

r? `@ghost`
`@rustbot` modify labels: rollup
2024-09-26 22:49:52 +00:00
Guillaume Gomez
432b1ff8f1
Rollup merge of #130862 - zopsicle:patch-1, r=notriddle,GuillaumeGomez
rustdoc: do not animate :target when user prefers reduced motion

This accessibility improvement gates #129284 behind an inverted [prefers-reduced-motion](https://developer.mozilla.org/en-US/docs/Web/CSS/`@media/prefers-reduced-motion)` media query.
2024-09-27 00:43:34 +02:00
Guillaume Gomez
a4a591a78c
Rollup merge of #130517 - bjorn3:update_ra_config, r=onur-ozkan
Add the library workspace to the suggested rust-analyzer config
2024-09-27 00:43:31 +02:00
zopsicle
5b5848188d rustdoc: consolidate prefers-reduced-motion-gated rulesets 2024-09-26 23:59:13 +02:00
Trevor Gross
1760d3914f Adjust allowed dependencies from the latest cargo update 2024-09-26 13:44:09 -04:00
github-actions
fb095cc3ff cargo update: rustbook
rustbook dependencies:
     Locking 70 packages to latest compatible versions
    Removing adler v1.0.2
      Adding adler2 v2.0.0
    Updating anstream v0.6.14 -> v0.6.15
    Updating anstyle v1.0.7 -> v1.0.8
    Updating anstyle-parse v0.2.4 -> v0.2.5
    Updating anstyle-query v1.1.0 -> v1.1.1
    Updating anstyle-wincon v3.0.3 -> v3.0.4
    Updating anyhow v1.0.86 -> v1.0.89
    Removing base64 v0.22.1
    Updating bstr v1.9.1 -> v1.10.0
      Adding byteorder v1.5.0
    Updating cc v1.1.5 -> v1.1.21
    Updating clap v4.5.9 -> v4.5.18
    Updating clap_builder v4.5.9 -> v4.5.18
    Updating clap_complete v4.5.8 -> v4.5.29
    Updating clap_derive v4.5.8 -> v4.5.18
    Updating clap_lex v0.7.1 -> v0.7.2
    Updating colorchoice v1.0.1 -> v1.0.2
    Updating core-foundation-sys v0.8.6 -> v0.8.7
    Updating cpufeatures v0.2.12 -> v0.2.14
      Adding dateparser v0.2.1
    Removing deranged v0.3.11
    Updating env_filter v0.1.0 -> v0.1.2
    Updating env_logger v0.11.3 -> v0.11.5
    Updating fastrand v2.1.0 -> v2.1.1
    Updating flate2 v1.0.30 -> v1.0.33
    Updating iana-time-zone v0.1.60 -> v0.1.61
    Updating indexmap v2.2.6 -> v2.5.0
    Updating is_terminal_polyfill v1.70.0 -> v1.70.1
    Updating js-sys v0.3.69 -> v0.3.70
      Adding lazy_static v1.5.0
    Updating libc v0.2.155 -> v0.2.158
    Removing linked-hash-map v0.5.6
    Updating mdbook-i18n-helpers v0.3.4 -> v0.3.5
    Updating miniz_oxide v0.7.4 -> v0.8.0
    Updating normpath v1.2.0 -> v1.3.0
    Removing num-conv v0.1.0
    Updating opener v0.7.1 -> v0.7.2
    Updating pest v2.7.11 -> v2.7.13
    Updating pest_derive v2.7.11 -> v2.7.13
    Updating pest_generator v2.7.11 -> v2.7.13
    Updating pest_meta v2.7.11 -> v2.7.13
    Removing plist v1.7.0
    Removing powerfmt v0.2.0
    Updating ppv-lite86 v0.2.17 -> v0.2.20
      Adding pulldown-cmark v0.11.3 (latest: v0.12.1)
      Adding pulldown-cmark-escape v0.11.0
      Adding pulldown-cmark-to-cmark v15.0.1 (latest: v17.0.0)
    Removing quick-xml v0.32.0
    Updating quote v1.0.36 -> v1.0.37
    Updating redox_syscall v0.5.3 -> v0.5.4
    Updating regex v1.10.5 -> v1.10.6
    Updating rustix v0.38.34 -> v0.38.37
    Updating serde v1.0.204 -> v1.0.210
    Updating serde_derive v1.0.204 -> v1.0.210
    Updating serde_json v1.0.120 -> v1.0.128
    Updating serde_spanned v0.6.6 -> v0.6.7
    Updating syn v2.0.71 -> v2.0.77
    Updating tempfile v3.10.1 -> v3.12.0
    Updating thiserror v1.0.62 -> v1.0.63
    Updating thiserror-impl v1.0.62 -> v1.0.63
    Removing time v0.3.36
    Removing time-core v0.1.2
    Removing time-macros v0.2.18
    Updating toml v0.8.14 -> v0.8.19
    Updating toml_datetime v0.6.6 -> v0.6.8
    Updating toml_edit v0.22.15 -> v0.22.21
    Updating unicode-ident v1.0.12 -> v1.0.13
    Updating unicode-normalization v0.1.23 -> v0.1.24
    Updating unicode-width v0.1.13 -> v0.1.14 (latest: v0.2.0)
    Updating version_check v0.9.4 -> v0.9.5
    Updating wasm-bindgen v0.2.92 -> v0.2.93
    Updating wasm-bindgen-backend v0.2.92 -> v0.2.93
    Updating wasm-bindgen-macro v0.2.92 -> v0.2.93
    Updating wasm-bindgen-macro-support v0.2.92 -> v0.2.93
    Updating wasm-bindgen-shared v0.2.92 -> v0.2.93
    Updating winapi-util v0.1.8 -> v0.1.9
      Adding windows-sys v0.59.0
    Updating winnow v0.6.13 -> v0.6.18
    Removing yaml-rust v0.4.5
      Adding zerocopy v0.7.35
      Adding zerocopy-derive v0.7.35
note: pass `--verbose` to see 26 unchanged dependencies behind latest

[ extracted from rust-lang/rust#129538 - Trevor ]

Co-authored-by: Trevor Gross <tmgross@umich.edu>
2024-09-26 12:56:46 -04:00
zopsicle
cdd3371bb4 rustdoc: do not animate when user prefers reduced motion
This accessibility improvement gates the target flashing and tooltip fade-out
behind an inverted prefers-reduced-motion media query.
2024-09-26 13:56:22 +02:00
Ding Xiang Fei
1576a6d618
Stabilize const_refs_to_static
update tests

fix bitwidth-sensitive stderr output

use build-fail for asm tests
2024-09-26 13:21:15 +02:00
bors
c361d52a9b Auto merge of #3916 - rust-lang:rustup-2024-09-26, r=RalfJung
Automatic Rustup
2024-09-26 09:41:27 +00:00
Ralf Jung
18aa926d09 remove some clippy lints from the list that we do not even trigger any more 2024-09-26 11:40:04 +02:00
Ralf Jung
bf78aec510 fix clippy::needless_return 2024-09-26 11:40:04 +02:00
Ralf Jung
294fdb820c clippy 2024-09-26 09:36:44 +02:00
Ralf Jung
adbaf13d32 bump rustc-build-sysroot version 2024-09-26 09:18:14 +02:00
The Miri Cronjob Bot
51087d2247 Merge from rustc 2024-09-26 05:23:15 +00:00
The Miri Cronjob Bot
824884d743 Preparing for merge from rustc 2024-09-26 05:15:46 +00:00
Lukas Markeffsky
345077af98 don't clone clean::Item in TypeImplCollector 2024-09-25 23:46:15 +02:00
Lukas Markeffsky
4facc1ce41 rm higher-ranked lifetimes from DocVisitor
This allows the visitor to borrow from the visitees.
2024-09-25 23:46:15 +02:00
Lukas Markeffsky
b1745c3919 de-rc external traits
Don't keep the `external_traits` as shared mutable data between the
`DocContext` and `clean::Crate`. Instead, move the data over when necessary.
This allows us to get rid of a borrowck hack in the `DocVisitor`.
2024-09-25 23:45:57 +02:00
bors
b7fe0b4266 Auto merge of #3915 - RalfJung:target-json-test, r=RalfJung
switch custom target JSON test to a less exotic target

We used to test an AVR target here, but while it is nice to test a 16bit target, it is also currently the case that rustc CI does not even check that libcore builds on a 16bit target -- and we don't want Miri to be in the game of maintaining that support. (See https://github.com/rust-lang/rust/issues/130818.)

So let's use a tier 2 target as the basis for testing a custom JSON target.

(FWIW, we also test wasm32-wasip2 which is tier 3, but I expect it will become tier 2 Soon-ish.)
2024-09-25 14:46:55 +00:00
Ralf Jung
897e941797 switch custom target JSON test to a less exotic target 2024-09-25 16:45:30 +02:00
bors
b5117538e9 Auto merge of #130812 - lnicola:sync-from-ra, r=lnicola
Subtree update of `rust-analyzer`

r? `@ghost`
2024-09-25 14:09:47 +00:00
Ralf Jung
c69b457ac2 enable pthread_cond_timedwait test on Android 2024-09-25 15:07:21 +02:00
bors
38352b01ae Auto merge of #130778 - flip1995:clippy-subtree-update, r=Manishearth
Clippy subtree update

r? `@Manishearth`

Really delayed sync (2 1/2 weeks), because of a `debug_assertion` we hit, and I didn't have the time to investigate earlier.

It would be nice to merge this PR with some priority, as it includes a lot of formatting changes due to the rustfmt bump.

Include Cargo.lock update due to Clippy version bump and ui_test bump in Clippy.
2024-09-25 11:40:41 +00:00
León Orell Valerian Liehr
01a063f9df
Compiler: Rename "object safe" to "dyn compatible" 2024-09-25 13:26:48 +02:00
Yoh Deadfall
b44888f7e9 Android: Fixed tests for libc time API 2024-09-25 13:23:13 +03:00
Ralf Jung
94339583b8 disable AVR test since it doesn't work 2024-09-25 10:50:41 +02:00
bors
2933f68abe Auto merge of #130816 - matthiaskrgr:rollup-jy25phv, r=matthiaskrgr
Rollup of 6 pull requests

Successful merges:

 - #130549 (Add RISC-V vxworks targets)
 - #130595 (Initial std library support for NuttX)
 - #130734 (Fix: ices on virtual-function-elimination about principal trait)
 - #130787 (Ban combination of GCE and new solver)
 - #130809 (Update llvm triple for OpenHarmony targets)
 - #130810 (Don't trap into the debugger on panics under Linux)

r? `@ghost`
`@rustbot` modify labels: rollup
2024-09-25 08:43:14 +00:00
Matthias Krüger
508b433e27
Rollup merge of #130549 - biabbas:riscv32_wrs_vxworks, r=nnethercote
Add RISC-V vxworks targets

Risc-V 32 and RISC-V 64 targets are to be added in the target list.
2024-09-25 10:09:22 +02:00
Laurențiu Nicola
35bc50fc85 Add missing rustc_private 2024-09-25 10:56:37 +03:00
Ralf Jung
a374d1c589 update BASIC test list: no longer test HashMap, add libc-mem instead of 'align' for heap allocator coverage, move 'hello' to UNIX
HashMap now needs pretty target-specific randomness functions.
It still works on Android, but not on FreeBSD and Solarish.
2024-09-25 08:49:25 +02:00
bors
34aff74fb0 Auto merge of #18183 - lnicola:sync-from-rust, r=lnicola
internal: Sync from downstream
2024-09-25 06:41:56 +00:00
Ralf Jung
60265e456b avoid using HashMap in fs test 2024-09-25 08:29:10 +02:00
Laurențiu Nicola
8be19465ec Run rustfmt 2024-09-25 09:26:15 +03:00
Lukas Wirth
78680acf9c Pass all-targets for build scripts in more cli commands
Without this, build scripts don't run for tests and as such any proc-macros in dev-deps fail to resolve
2024-09-25 08:23:09 +02:00
Ralf Jung
cbe2ec05ac add test for std::random 2024-09-25 08:22:33 +02:00
Laurențiu Nicola
329eef0018 Add more LayoutError variants 2024-09-25 09:15:11 +03:00
Laurențiu Nicola
62aac8dd4f Bump rustc crates 2024-09-25 09:05:38 +03:00
Laurențiu Nicola
ed7150f2af Merge from rust-lang/rust 2024-09-25 09:00:53 +03:00
Laurențiu Nicola
96736aeaee Preparing for merge from rust-lang/rust 2024-09-25 09:00:31 +03:00
The Miri Cronjob Bot
e057c17776 fmt 2024-09-25 05:15:00 +00:00
The Miri Cronjob Bot
3209f2a65d Merge from rustc 2024-09-25 05:13:50 +00:00
The Miri Cronjob Bot
f319ce73d7 Preparing for merge from rustc 2024-09-25 05:06:18 +00:00
bors
4c62024cd5 Auto merge of #130803 - cuviper:file-buffered, r=joshtriplett
Add `File` constructors that return files wrapped with a buffer

In addition to the light convenience, these are intended to raise visibility that buffering is something you should consider when opening a file, since unbuffered I/O is a common performance footgun to Rust newcomers.

ACP: https://github.com/rust-lang/libs-team/issues/446
Tracking Issue: #130804
2024-09-25 04:57:12 +00:00
bors
1b5aa96d60 Auto merge of #130807 - tgross35:rollup-p304vzf, r=tgross35
Rollup of 7 pull requests

Successful merges:

 - #130234 (improve compile errors for invalid ptr-to-ptr casts with trait objects)
 - #130752 (Improve assembly test for CMSE ABIs)
 - #130764 (Separate collection of crate-local inherent impls from error tracking)
 - #130788 (Pin memchr to 2.5.0 in the library rather than rustc_ast)
 - #130789 (add InProgress ErrorKind gated behind io_error_inprogress feature)
 - #130793 (Mention `COMPILETEST_VERBOSE_CRASHES` on crash test failure)
 - #130798 (rustdoc: inherit parent's stability where applicable)

Failed merges:

 - #130735 (Simple validation for unsize coercion in MIR validation)

r? `@ghost`
`@rustbot` modify labels: rollup
2024-09-25 02:06:55 +00:00
Trevor Gross
9737f923e2
Rollup merge of #130798 - lukas-code:doc-stab, r=notriddle
rustdoc: inherit parent's stability where applicable

It is currently not possible for a re-export to have a different stability (https://github.com/rust-lang/rust/issues/30827). Therefore the standard library uses a hack when moving items like `std::error::Error` or `std::net::IpAddr` into `core` by marking the containing module (`core::error` / `core::net`) as unstable or stable in a later version than the items the module contains.

Previously, rustdoc would always show the *stability as declared* for an item rather than the *stability as publicly reachable* (i.e. the features required to actually access the item), which could be confusing when viewing the docs. This PR changes it so that we show the stability of the first unstable parent or the most recently stabilized parent instead, to hopefully make things less confusing.

fixes https://github.com/rust-lang/rust/issues/130765

screenshots:
![error in std](https://github.com/user-attachments/assets/2ab9bdb9-ed81-4e45-a832-ac7d3ba1be3f) ![error in core](https://github.com/user-attachments/assets/46f46182-5642-4ac5-b92e-0b99a8e2496d)
2024-09-24 19:47:52 -04:00
Trevor Gross
7de108277b
Rollup merge of #130793 - jieyouxu:mention-crashes-verbose, r=matthiaskrgr
Mention `COMPILETEST_VERBOSE_CRASHES` on crash test failure

Fixes https://github.com/rust-lang/rust/issues/130776.

r? `@matthiaskrgr` (or compiler/bootstrap)
2024-09-24 19:47:51 -04:00