Commit graph

160957 commits

Author SHA1 Message Date
dianne
f35eae780b store the kind of pattern adjustments in pat_adjustments
This allows us to better distinguish builtin and overloaded implicit
dereferences.
2025-04-12 17:42:09 -07:00
bors
0fe8f3454d Auto merge of #137412 - scottmcm:redo-swap, r=cuviper
Ensure `swap_nonoverlapping` is really always untyped

This replaces #134954, which was arguably overcomplicated.

## Fixes #134713

Actually using the type passed to `ptr::swap_nonoverlapping` for anything other than its size + align turns out to not work, so this goes back to always erasing the types down to just bytes.

(Except in `const`, which keeps doing the same thing as before to preserve `@RalfJung's` fix from #134689)

## Fixes #134946

I'd previously moved the swapping to use auto-vectorization *on bytes*, but someone pointed out on Discord that the tail loop handling from that left a whole bunch of byte-by-byte swapping around.  This goes back to manual tail handling to avoid that, then still triggers auto-vectorization on pointer-width values.  (So you'll see `<4 x i64>` on `x86-64-v3` for example.)
2025-04-10 20:19:11 +00:00
Matthias Krüger
c9613f87ef
Rollup merge of #139630 - RalfJung:miri-sync, r=RalfJung
Miri subtree update

r? `@ghost`

a sync is needed to fix the miri-test-libstd failures
2025-04-10 17:27:17 +02:00
Matthias Krüger
362c0f2711
Rollup merge of #139609 - jieyouxu:compiletest-path-misc, r=Kobzol
compiletest: don't use stringly paths for `compose_and_run`

Eventually I'd like to fully migrate to `camino`'s `{Utf8Path,Utf8PathBuf}` because compiletest assumes UTF-8 paths all over the place, so this is an precursor change to make the migration diff cleaner.

r? `@Kobzol` (or bootstrap/compiler)
2025-04-10 17:27:15 +02:00
Matthias Krüger
af3b892ca3
Rollup merge of #139606 - jieyouxu:compiletest-edition2024, r=compiler-errors
Update compiletest to Edition 2024

r? bootstrap (or compiler)

try-job: x86_64-apple-1
try-job: x86_64-msvc-1
try-jbo: x86_64-mingw-1
2025-04-10 17:27:15 +02:00
Matthias Krüger
79f357e63d
Rollup merge of #139510 - nnethercote:name-to-ident, r=fee1-dead
Rename some `name` variables as `ident`.

It bugs me when variables of type `Ident` are called `name`. It leads to silly things like `name.name`. `Ident` variables should be called `ident`, and `name` should be used for variables of type `Symbol`.

This commit improves things by by doing `s/name/ident/` on a bunch of `Ident` variables. Not all of them, but a decent chunk.

r? `@fee1-dead`
2025-04-10 17:27:14 +02:00
Ralf Jung
f69ea4d82f Merge from rustc 2025-04-10 14:24:19 +02:00
Ralf Jung
830c58be89 Preparing for merge from rustc 2025-04-10 14:24:14 +02:00
Ralf Jung
7da4440012
Merge pull request #4262 from RalfJung/win-path
path: add more Windows tests
2025-04-10 11:12:21 +00:00
Ralf Jung
dc3843b70e make GetFullPathNameW more correct on non-Windows hosts 2025-04-10 12:48:00 +02:00
Matthias Krüger
d7171bc8ce
Rollup merge of #139592 - camelid:doctest-md-opts, r=notriddle
rustdoc: Enable Markdown extensions when looking for doctests

Fixes #139064.

We should enable these to avoid misinterpreting uses of the extended
syntax as code blocks. This happens in practice with multi-paragraph
footnotes, as discovered in #139064.
2025-04-10 11:10:19 +02:00
Matthias Krüger
12172ebf70
Rollup merge of #139560 - programmerjake:patch-5, r=jieyouxu
fix title of offset_of_enum feature

tracking issue #120141
2025-04-10 11:10:16 +02:00
Matthias Krüger
2b0e47eb4c
Rollup merge of #139507 - Zalathar:trim-env-name, r=jieyouxu
compiletest: Trim whitespace from environment variable names

When a test contains a directive like `//@ exec-env: FOO=bar`, compiletest currently includes that leading space in the name of the environment variable, so it is defined as ` FOO` instead of `FOO`.

This is an annoying footgun that is pretty much never intended, especially since most other directives *do* trim whitespace. So let's get rid of it by trimming the environment variable name.

Values remain untrimmed, since there could conceivably be a use-case for values with leading space, but perhaps we'll end up trimming values too in the future.

Recently observed in https://github.com/rust-lang/rust/pull/138603#issuecomment-2783709359.

Fixes #132990.
Supersedes #133148.

---

try-job: test-various
2025-04-10 11:10:15 +02:00
Matthias Krüger
aecce2161d
Rollup merge of #138605 - xizheyin:issue-138567, r=GuillaumeGomez
Clean up librustdoc::html::render to be better encapsulated

Closes #138567
2025-04-10 11:10:13 +02:00
Matthias Krüger
070148acf1
Rollup merge of #138167 - GuillaumeGomez:rustdoc-hidden-stripper-improvement, r=camelid
Small code improvement in rustdoc hidden stripper

This is a very minor code improvement following https://github.com/rust-lang/rust/pull/137534. It doesn't change anything about the performance issue.

r? ```@notriddle```
2025-04-10 11:10:13 +02:00
Ralf Jung
fb30824850
Merge pull request #4209 from LorrensP-2158466/freebsd_futex
Implement FreeBSD syscall _umtx_op  for futex support
2025-04-10 09:04:44 +00:00
LorrensP-2158466
88a82be263 feature: implement WAIT & WAKE operations of FreeBSD _umtx_op syscall for Futex support 2025-04-10 10:30:02 +02:00
Jieyou Xu
59a1f3314c
compiletest: update to Edition 2024 2025-04-10 15:01:48 +08:00
Ralf Jung
726e33f0e3 path: add more Windows tests 2025-04-10 08:40:22 +02:00
Jieyou Xu
4f7c02dda1
compiletest: don't use stringly paths for compose_and_run 2025-04-10 09:38:47 +08:00
bors
6813f955a6 Auto merge of #139279 - BoxyUwU:bump-boostrap, r=jieyouxu
Bump boostrap compiler to new beta

try-job: `*msvc*`
2025-04-10 00:43:25 +00:00
Nicholas Nethercote
1b3fc585cb Rename some name variables as ident.
It bugs me when variables of type `Ident` are called `name`. It leads to
silly things like `name.name`. `Ident` variables should be called
`ident`, and `name` should be used for variables of type `Symbol`.

This commit improves things by by doing `s/name/ident/` on a bunch of
`Ident` variables. Not all of them, but a decent chunk.
2025-04-10 09:30:55 +10:00
Urgau
57c2a021a4
triagebot: enable [canonicalize-issue-links] and [no-mentions] 2025-04-09 20:29:19 +02:00
Matthias Krüger
7aab307541
Rollup merge of #139575 - timesince:master, r=wesleywiser
Remove redundant words

Remove redundant words
2025-04-09 20:23:13 +02:00
Matthias Krüger
4911635ec3
Rollup merge of #139489 - petrochenkov:noreqann, r=jieyouxu
compiletest: Add directive `dont-require-annotations`

for making matching on specific diagnostic kinds non-exhaustive.

E.g. `//@ dont-require-annotations:ERROR`, like in the examples in this PR.

cc https://github.com/rust-lang/rust/pull/139427#issuecomment-2782827583

Closes #132647 FYI `@BoxyUwU` since you've wanted this.

r? `@jieyouxu`
2025-04-09 20:23:10 +02:00
Matthias Krüger
ac41b940f2
Rollup merge of #139488 - GuillaumeGomez:add-missing-gui-test, r=camelid
Add missing regression GUI test

Add missing GUI test for #139282 (and also fixes the invalid CSS).

cc `@lolbinarycat`
r? `@notriddle`
2025-04-09 20:23:10 +02:00
Noah Lev
8b227a42fa rustdoc: Enable Markdown extensions when looking for doctests
We should enable these to avoid misinterpreting uses of the extended
syntax as code blocks. This happens in practice with multi-paragraph
footnotes, as discovered in #139064.
2025-04-09 13:04:57 -04:00
Scott McMurray
b06a88ff61 Add a Miri test for 134713 2025-04-09 09:09:37 -07:00
Matthias Krüger
1aa6f70e3e
Rollup merge of #139573 - RalfJung:miri-sync, r=RalfJung
Miri subtree update

r? `@ghost`
2025-04-09 14:52:39 +02:00
Matthias Krüger
704d301b43
Rollup merge of #139481 - Kobzol:post-merge-links, r=marcoieni
Add job summary links to post-merge report

This should make it much easier to investigate the individual job test/duration changes.

The GitHub API handling is a bit crude, but I didn't want to include octocrab, because it more than doubles the current number of dependencies of `citool`...

Can be tested with:
```bash
$ cargo run --manifest-path src/ci/citool/Cargo.toml post-merge-report bad13a970a 1e008dd5d8
```

r? ```@marcoieni```
2025-04-09 14:52:39 +02:00
xizheyin
32c8f7dbcf
librustdoc: remove IndexItem::new, use previous fields constructor
Signed-off-by: xizheyin <xizheyin@smail.nju.edu.cn>
2025-04-09 20:51:52 +08:00
Boxy
5a5bda52f0 Update boostrap 2025-04-09 12:33:09 +01:00
Boxy
c274459b63 clippy lints 2025-04-09 12:29:59 +01:00
Boxy
2b684f39e4 update missing targets list 2025-04-09 12:29:59 +01:00
Boxy
c93005ee65 update cfgs 2025-04-09 12:29:59 +01:00
Boxy
609eacbb22 bump stage0 2025-04-09 12:29:59 +01:00
timesince
069fd02588
Remove redundant words 2025-04-09 18:46:50 +08:00
Vadim Petrochenkov
cffc5c21fc compiletest: Add directive dont-require-annotations
for making matching on specific diagnostic kinds non-exhaustive
2025-04-09 09:51:39 +03:00
Ralf Jung
6c619bb9ee
Merge pull request #4067 from CraftSpider/windows-metadata
Support getting file metadata on Windows
2025-04-09 06:17:18 +00:00
bors
97c966bb40 Auto merge of #139552 - matthiaskrgr:rollup-b194mk8, r=matthiaskrgr
Rollup of 10 pull requests

Successful merges:

 - #139494 (Restrict some queries by def-kind more)
 - #139496 (Revert r-a changes of rust-lang/rust#139455)
 - #139506 (add missing word in doc comment (part 2))
 - #139515 (Improve presentation of closure signature mismatch from `Fn` trait goal)
 - #139520 (compiletest maintenance: sort deps and drop dep on `anyhow`)
 - #139523 (Rustc dev guide subtree update)
 - #139526 (Fix deprecation note for std::intrinsics)
 - #139528 (compiletest: Remove the `--logfile` flag)
 - #139541 (Instantiate higher-ranked transmute goal w/ placeholders before emitting sub-obligations)
 - #139547 (Update library tracking issue template to set S-tracking-unimplemented)

r? `@ghost`
`@rustbot` modify labels: rollup
2025-04-09 05:39:18 +00:00
Rune Tynan
209ce59195 Implement trivial file operations - opening and closing handles. Just enough to get file metadata. 2025-04-08 21:11:58 -07:00
Jacob Lifshay
12311ef8ac
fix title of offset_of_enum feature 2025-04-08 16:21:52 -07:00
Matthias Krüger
049d897bae
Rollup merge of #139528 - Zalathar:no-logfile, r=jieyouxu
compiletest: Remove the `--logfile` flag

This flag is deprecated in libtest (#134283), and there's no evidence in-tree of this flag actually being passed to compiletest.

For detailed information about test results, bootstrap parses JSON output from compiletest instead (#108659).

As part of my experimental work on removing the libtest dependency from compiletest, it's useful to be able to disconnect libtest functionality that isn't needed.
2025-04-08 21:26:02 +02:00
Matthias Krüger
87dfd1245f
Rollup merge of #139523 - BoxyUwU:rgd-push, r=jieyouxu
Rustc dev guide subtree update

r? `@jieyouxu`
2025-04-08 21:26:00 +02:00
Matthias Krüger
40be0470b5
Rollup merge of #139520 - jieyouxu:compiletest-maintenance-1, r=lqd
compiletest maintenance: sort deps and drop dep on `anyhow`

Two changes:

1. Sort compiletest deps alphabetically because it was annoying me (harder to quickly glance what deps compiletest is using).
2. Drop dependency on `anyhow`. There's only one usage of `anyhow`, which is for `with_context` on sth that would immediately panic anyway.
2025-04-08 21:26:00 +02:00
Matthias Krüger
df9796f20d
Rollup merge of #139506 - tshepang:patch-6, r=jieyouxu
add missing word in doc comment (part 2)
2025-04-08 21:25:59 +02:00
Matthias Krüger
7661224f1e
Rollup merge of #139496 - Skgland:139455-went-too-far, r=Veykril
Revert r-a changes of rust-lang/rust#139455

I discovered https://github.com/rust-lang/rust/issues/132735#issuecomment-2784205477 that I might have done too much in rust-lang/rust#132735 by also removing support in r-a.
So this reverts the commit with the changes to r-a.

r? RalfJung
2025-04-08 21:25:58 +02:00
Matthias Krüger
1cbf8b56af
Rollup merge of #139509 - xizheyin:issue-139359, r=lcnr
clean: remove Deref<Target=RegionKind> impl for Region and use `.kind()`

Closes #139359

r? `@lcnr`
2025-04-08 18:05:34 +02:00
Matthias Krüger
74c2a9be5b
Rollup merge of #139504 - tshepang:patch-5, r=jieyouxu
add missing word in doc comment
2025-04-08 18:05:32 +02:00
Matthias Krüger
7bc1d3abb9
Rollup merge of #139491 - rustbot:docs-update, r=ehuss
Update books

## rust-lang/reference

12 commits in e95ebdfee02514d93f79ec92ae310a804e87f01f..46435cd4eba11b66acaa42c01da5c80ad88aee4b
2025-04-07 14:21:21 UTC to 2025-03-25 20:13:17 UTC

- Update book.toml fix the authors field (rust-lang/reference#1780)
- Update precedence table for borrow operators (rust-lang/reference#1776)
- Add the ability for rules to be specified in link definitions (rust-lang/reference#1775)
- Rework trait parameter patterns (rust-lang/reference#1771)
- Fix header rules (rust-lang/reference#1770)
- Add test wrappers (rust-lang/reference#1774)
- Update tools to Rust 2024 (rust-lang/reference#1773)
- Define byte (rust-lang/reference#1772)
- Fix CSS for new footnote style (rust-lang/reference#1777)
- do not reference LLVM in our definition of UB (rust-lang/reference#1750)
- Tweak reference for precise capturing in traits (rust-lang/reference#1769)
- Add edition admonitions (rust-lang/reference#1764)

## rust-lang/rust-by-example

2 commits in 6f69823c28ae8d929d6c815181c73d3e99ef16d3..0d7964d5b22cf920237ef1282d869564b4883b88
2025-04-07 11:19:31 UTC to 2025-03-29 02:25:52 UTC

- Rename count to index for clarity (rust-lang/rust-by-example#1920)
- Fixing grammar in panic section (rust-lang/rust-by-example#1916)
2025-04-08 18:05:25 +02:00