]> git.lizzy.rs Git - rust.git/log
rust.git
17 months agoAuto merge of #106121 - RalfJung:miri, r=RalfJung
bors [Sun, 25 Dec 2022 17:39:06 +0000 (17:39 +0000)]
Auto merge of #106121 - RalfJung:miri, r=RalfJung

update Miri

Noteworthy PRs:
- https://github.com/rust-lang/miri/pull/2357
- https://github.com/rust-lang/miri/pull/2646
- https://github.com/rust-lang/miri/pull/2718
- https://github.com/rust-lang/miri/pull/2721
- https://github.com/rust-lang/miri/pull/2725

17 months agoAuto merge of #105701 - RedDocMD:bug-105634, r=cjgillot
bors [Sun, 25 Dec 2022 14:42:49 +0000 (14:42 +0000)]
Auto merge of #105701 - RedDocMD:bug-105634, r=cjgillot

Allow .. to be parsed as let initializer

.. and ..= are valid expressions, however when used in a let statement
it is not parsed.
Fixes #105634

17 months agoAuto merge of #2739 - RalfJung:misc, r=RalfJung
bors [Sun, 25 Dec 2022 13:21:26 +0000 (13:21 +0000)]
Auto merge of #2739 - RalfJung:misc, r=RalfJung

enable some warnings that rustc bootstrap enables

also use cargo-install to install josh-proxy, since the docker version cannot access SSH keys (needed for pushing)

17 months agoenable some warnings that rustc bootstrap enables
Ralf Jung [Sun, 25 Dec 2022 13:18:41 +0000 (14:18 +0100)]
enable some warnings that rustc bootstrap enables

17 months agouse cargo-install to install josh-proxy
Ralf Jung [Sun, 25 Dec 2022 13:16:10 +0000 (14:16 +0100)]
use cargo-install to install josh-proxy

17 months agoAuto merge of #106112 - RalfJung:into-iter, r=thomcc
bors [Sun, 25 Dec 2022 04:26:14 +0000 (04:26 +0000)]
Auto merge of #106112 - RalfJung:into-iter, r=thomcc

add lib tests for vec::IntoIter alignment issues

This adds non-Miri tests for the issue fixed in https://github.com/rust-lang/rust/pull/106084

r? `@thomcc`

17 months agoAuto merge of #106132 - kadiwa4:typos, r=compiler-errors
bors [Sun, 25 Dec 2022 01:44:28 +0000 (01:44 +0000)]
Auto merge of #106132 - kadiwa4:typos, r=compiler-errors

Fix some typos

17 months agofix some typos
KaDiWa [Sat, 24 Dec 2022 23:43:50 +0000 (00:43 +0100)]
fix some typos

17 months agoAuto merge of #106123 - gimbles:patch-1, r=jyn
bors [Sat, 24 Dec 2022 23:22:42 +0000 (23:22 +0000)]
Auto merge of #106123 - gimbles:patch-1, r=jyn

Make note bold

~~this seems to be have occurred in a recent edit, i clearly remember just note being bold~~

the entire note was bold

17 months agoAuto merge of #106110 - GuillaumeGomez:toggle-line-background, r=notriddle
bors [Sat, 24 Dec 2022 20:23:45 +0000 (20:23 +0000)]
Auto merge of #106110 - GuillaumeGomez:toggle-line-background, r=notriddle

Migrate toggle-line-inner background to CSS variable

r? `@notriddle`

17 months agoAuto merge of #104977 - RalfJung:ptr-from-ref, r=dtolnay
bors [Sat, 24 Dec 2022 17:14:26 +0000 (17:14 +0000)]
Auto merge of #104977 - RalfJung:ptr-from-ref, r=dtolnay

add ptr::from_{ref,mut}

We have methods to avoid almost all `as` casts around raw pointer handling, except for the initial cast from reference to raw pointer. These new methods close that gap.

(I also moved `null_mut` next to `null` to keep the file consistently organized.)

r? libs-api

Tracking issue: https://github.com/rust-lang/rust/issues/106116

17 months agoUpdate README.md
Gimbles [Sat, 24 Dec 2022 15:48:35 +0000 (21:18 +0530)]
Update README.md

17 months agoUpdate README.md
Gimbles [Sat, 24 Dec 2022 15:46:14 +0000 (21:16 +0530)]
Update README.md

17 months agoBold
Gimbles [Sat, 24 Dec 2022 15:32:15 +0000 (21:02 +0530)]
Bold

17 months agoAuto merge of #105085 - oli-obk:stop_promoting_all_the_things, r=RalfJung
bors [Sat, 24 Dec 2022 14:00:37 +0000 (14:00 +0000)]
Auto merge of #105085 - oli-obk:stop_promoting_all_the_things, r=RalfJung

Stop promoting all the things

fixes #91009

r? `@RalfJung`

17 months agoAuto merge of #106111 - matthiaskrgr:rollup-nnpoe5h, r=matthiaskrgr
bors [Sat, 24 Dec 2022 10:46:43 +0000 (10:46 +0000)]
Auto merge of #106111 - matthiaskrgr:rollup-nnpoe5h, r=matthiaskrgr

Rollup of 6 pull requests

Successful merges:

 - #105465 (Improve top-level docs)
 - #105872 (Suggest remove last method call when type coerce with expected  type)
 - #106032 (std: only use LFS function on glibc)
 - #106078 (Provide more context on FileCheck failures)
 - #106100 (Codegen test for derived `<` on trivial newtype [TEST ONLY])
 - #106109 (rustdoc: make line number CSS for doc comment and scraped the same)

Failed merges:

r? `@ghost`
`@rustbot` modify labels: rollup

17 months agoadd tracking issue, fix typo
Ralf Jung [Sat, 24 Dec 2022 09:47:31 +0000 (10:47 +0100)]
add tracking issue, fix typo

17 months agoAuto merge of #2738 - RalfJung:rustup, r=RalfJung
bors [Sat, 24 Dec 2022 09:41:11 +0000 (09:41 +0000)]
Auto merge of #2738 - RalfJung:rustup, r=RalfJung

Rustup

17 months agofix warnings
Ralf Jung [Sat, 24 Dec 2022 09:12:28 +0000 (10:12 +0100)]
fix warnings

17 months agoMerge from rustc
Ralf Jung [Sat, 24 Dec 2022 09:12:14 +0000 (10:12 +0100)]
Merge from rustc

17 months agoadd lib tests for vec::IntoIter alignment issues
Ralf Jung [Sat, 24 Dec 2022 08:09:34 +0000 (09:09 +0100)]
add lib tests for vec::IntoIter alignment issues

17 months agoPreparing for merge from rustc
Ralf Jung [Sat, 24 Dec 2022 08:58:29 +0000 (09:58 +0100)]
Preparing for merge from rustc

17 months agoAuto merge of #2646 - saethlin:data-race-spans, r=RalfJung
bors [Sat, 24 Dec 2022 08:13:31 +0000 (08:13 +0000)]
Auto merge of #2646 - saethlin:data-race-spans, r=RalfJung

Data race spans

Fixes https://github.com/rust-lang/miri/issues/2205

This adds output to data race errors very similar to the spans we emit for Stacked Borrows errors. For example, from our test suite:
```
help: The Atomic Load on thread `<unnamed>` is here
  --> tests/fail/data_race/atomic_read_na_write_race1.rs:23:13
   |
23 | ...   (&*c.0).load(Ordering::SeqCst) //~ ERROR: Data race detected between Atomic Load on thread `<unnamed>` and Write o...
   |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
help: The Write on thread `<unnamed>` is here
  --> tests/fail/data_race/atomic_read_na_write_race1.rs:19:13
   |
19 |             *(c.0 as *mut usize) = 32;
   |             ^^^^^^^^^^^^^^^^^^^^^^^^^```
```

Because of https://github.com/rust-lang/miri/pull/2647 this comes without a perf regression, according to our benchmarks.

17 months agoRollup merge of #106109 - notriddle:notriddle/source-lines, r=GuillaumeGomez
Matthias Krüger [Sat, 24 Dec 2022 07:53:48 +0000 (08:53 +0100)]
Rollup merge of #106109 - notriddle:notriddle/source-lines, r=GuillaumeGomez

rustdoc: make line number CSS for doc comment and scraped the same

![image](https://user-images.githubusercontent.com/1593513/209423540-2657bb43-e6d7-4af3-9cb3-c790a8dd8cd9.png)

Discussed in
https://rust-lang.zulipchat.com/#narrow/stream/266220-rustdoc/topic/Line.20number.20styling

Preview: http://notriddle.com/notriddle-rustdoc-demos/source-lines/test_dingus/fn.test.html

17 months agoRollup merge of #106100 - scottmcm:derived-less-than-test, r=compiler-errors
Matthias Krüger [Sat, 24 Dec 2022 07:53:48 +0000 (08:53 +0100)]
Rollup merge of #106100 - scottmcm:derived-less-than-test, r=compiler-errors

Codegen test for derived `<` on trivial newtype [TEST ONLY]

I originally wrote this for #106065, but the libcore changes there aren't necessarily a win.

So I pulled out this test to be its own PR since it's important (see https://github.com/rust-lang/rust/pull/105840#discussion_r1056030324) and well-intentioned changes to core or the derive could accidentally break it without that being obvious (other than by massive unexplained perf changes).

17 months agoRollup merge of #106078 - nikic:filecheck-context, r=Mark-Simulacrum
Matthias Krüger [Sat, 24 Dec 2022 07:53:48 +0000 (08:53 +0100)]
Rollup merge of #106078 - nikic:filecheck-context, r=Mark-Simulacrum

Provide more context on FileCheck failures

FileCheck provides 5 lines of context by default. This is often insufficient to analyze failures that happen in CI. Increase the amount of context to 100 lines.

17 months agoRollup merge of #106032 - mcha-forks:lfs-musl-fix, r=thomcc
Matthias Krüger [Sat, 24 Dec 2022 07:53:47 +0000 (08:53 +0100)]
Rollup merge of #106032 - mcha-forks:lfs-musl-fix, r=thomcc

std: only use LFS function on glibc

see #94173 and commit 27011b4185f5341e579d2a02cabd3dc7d7aa7149.

17 months agoRollup merge of #105872 - chenyukang:yukang/fix-105494-remove-method-call, r=eholk
Matthias Krüger [Sat, 24 Dec 2022 07:53:47 +0000 (08:53 +0100)]
Rollup merge of #105872 - chenyukang:yukang/fix-105494-remove-method-call, r=eholk

Suggest remove last method call when type coerce with expected  type

Fixes #105494

17 months agoRollup merge of #105465 - jyn514:docs, r=Mark-Simulacrum
Matthias Krüger [Sat, 24 Dec 2022 07:53:46 +0000 (08:53 +0100)]
Rollup merge of #105465 - jyn514:docs, r=Mark-Simulacrum

Improve top-level docs

See a detailed explanation in the commit messages. This is a companion PR to https://github.com/rust-lang/rustc-dev-guide/pull/1528.

* Link to other resources instead of inlining their information
* Remove ancient and outdated reference to `config.mk`
* Suggest `profile = "user"` in the README
* Add detail about dependencies from the dev-guide
* Link to CONTRIBUTING.md instead of rustc-dev-guide in the main readme
* Link to `std-dev-guide` in CONTRIBUTING.md

17 months agoAuto merge of #106081 - mina86:c, r=Mark-Simulacrum
bors [Sat, 24 Dec 2022 07:35:23 +0000 (07:35 +0000)]
Auto merge of #106081 - mina86:c, r=Mark-Simulacrum

char: µoptimise UTF-16 surrogates decoding

According to Godbolt¹, on x86_64 using binary and produces slightly
better code than using subtraction.  Readability of both is pretty
much equivalent so might just as well use the shorter option.

¹ https://rust.godbolt.org/z/9jM3ejbMx

17 months agoExtend GUI test for toggle-line background
Guillaume Gomez [Sat, 24 Dec 2022 07:29:17 +0000 (08:29 +0100)]
Extend GUI test for toggle-line background

17 months agoMigrate toggle-line-inner background to CSS variable
Guillaume Gomez [Sat, 24 Dec 2022 07:28:59 +0000 (08:28 +0100)]
Migrate toggle-line-inner background to CSS variable

17 months agorustdoc: make line number CSS for doc comment and scraped the same
Michael Howell [Sat, 24 Dec 2022 05:55:04 +0000 (22:55 -0700)]
rustdoc: make line number CSS for doc comment and scraped the same

Discussed in
https://rust-lang.zulipchat.com/#narrow/stream/266220-rustdoc/topic/Line.20number.20styling

17 months agoAuto merge of #105893 - Ayush1325:remote-test-server-improve, r=Mark-Simulacrum
bors [Sat, 24 Dec 2022 04:54:39 +0000 (04:54 +0000)]
Auto merge of #105893 - Ayush1325:remote-test-server-improve, r=Mark-Simulacrum

Use u32 methods instead of manual shifting

Switch to `to_le_bytes()` and `from_le_bytes()` instead of manual shifting

This was suggested [`here`](https://github.com/rust-lang/rust/pull/105145#discussion_r1051418964)

Signed-off-by: Ayush Singh <ayushsingh1325@gmail.com>
17 months agoAuto merge of #106103 - matthiaskrgr:rollup-8xe9ddz, r=matthiaskrgr
bors [Sat, 24 Dec 2022 01:42:00 +0000 (01:42 +0000)]
Auto merge of #106103 - matthiaskrgr:rollup-8xe9ddz, r=matthiaskrgr

Rollup of 7 pull requests

Successful merges:

 - #105970 (docs/test: add UI test and long-form error docs for E0462)
 - #105975 (rustc: Remove needless lifetimes)
 - #106069 (rustdoc: use a more evocative name for CSS/JS `#titles`)
 - #106084 (fix vec::IntoIter::drop on high-alignment ZST)
 - #106091 (Use correct CSS pseudo-element selector)
 - #106093 (rustdoc: remove no-op CSS from `.docblock-short`)
 - #106102 (Fix `triagebot.toml`)

Failed merges:

 - #106028 (docs/test: add UI test and long-form error docs for `E0461`)

r? `@ghost`
`@rustbot` modify labels: rollup

17 months agoRemove ancient and outdated references to `config.mk`
Joshua Nelson [Sat, 24 Dec 2022 01:03:51 +0000 (19:03 -0600)]
Remove ancient and outdated references to `config.mk`

17 months agoSuggest `profile = "user"` in the README
Joshua Nelson [Sat, 24 Dec 2022 01:03:50 +0000 (19:03 -0600)]
Suggest `profile = "user"` in the README

This sets several useful defaults, like `extended = true`, and gives us a path forward for changing
global defaults without breaking distros.

17 months agoAdd detail about dependencies from the dev-guide
Joshua Nelson [Sat, 24 Dec 2022 01:03:50 +0000 (19:03 -0600)]
Add detail about dependencies from the dev-guide

The goal is to remove this altogether from the dev-guide once this PR is merged.

17 months agoLink to other resources instead of inlining their information
Joshua Nelson [Sat, 24 Dec 2022 01:03:50 +0000 (19:03 -0600)]
Link to other resources instead of inlining their information

The other places are more accurate and up-to-date.

- Link to `std-dev-guide` in CONTRIBUTING.md

  Thom and Mara said the guide is in reasonably good shape, and it's tailored more closely to people working on the standard library.

- Link to CONTRIBUTING.md instead of rustc-dev-guide in the main readme

  CONTRIBUTING.md has more information and also links the std-dev-guide.

- Link to forge for the list of tested platforms; the one in the readme
  was hopelessly out of date.

17 months agoRollup merge of #106102 - compiler-errors:oops-triagebot-broke, r=scottmcm
Matthias Krüger [Fri, 23 Dec 2022 23:31:43 +0000 (00:31 +0100)]
Rollup merge of #106102 - compiler-errors:oops-triagebot-broke, r=scottmcm

Fix `triagebot.toml`

17 months agoRollup merge of #106093 - notriddle:notriddle/docblock-short-overflow, r=GuillaumeGomez
Matthias Krüger [Fri, 23 Dec 2022 23:31:43 +0000 (00:31 +0100)]
Rollup merge of #106093 - notriddle:notriddle/docblock-short-overflow, r=GuillaumeGomez

rustdoc: remove no-op CSS from `.docblock-short`

The rules `overflow:hidden` and `text-overflow:ellipses` only have an effect if overflow occurs, which cannot happen because it will just line wrap instead.

These rules definitely became obsolete by https://github.com/rust-lang/rust/pull/77699, when the stylesheet was decidedly changed to have line wrapping in short docblocks, but given the bug it was fixing, this probably got broken earlier.

17 months agoRollup merge of #106091 - GuillaumeGomez:correct-css-pseudo-element, r=notriddle
Matthias Krüger [Fri, 23 Dec 2022 23:31:43 +0000 (00:31 +0100)]
Rollup merge of #106091 - GuillaumeGomez:correct-css-pseudo-element, r=notriddle

Use correct CSS pseudo-element selector

Pseudo-element should use "::" to not be confused with pseudo selectors (nice explanation here: https://css-tricks.com/to-double-colon-or-not-do-double-colon/).

r? ``@notriddle``

17 months agoRollup merge of #106084 - RalfJung:into-iter, r=thomcc
Matthias Krüger [Fri, 23 Dec 2022 23:31:42 +0000 (00:31 +0100)]
Rollup merge of #106084 - RalfJung:into-iter, r=thomcc

fix vec::IntoIter::drop on high-alignment ZST

This fixes a soundness bug: IntoIter would call `drop_in_place` on an insufficiently aligned pointer. So if a ZST with alignment greater 1 had drop glue, that would be called with an unaligned reference. Since https://github.com/rust-lang/rust/pull/103957, Miri checks alignment even if the type does not have drop glue, which is how this bug was found.

r? ``@thomcc``

17 months agoRollup merge of #106069 - notriddle:notriddle/search-tabs, r=GuillaumeGomez
Matthias Krüger [Fri, 23 Dec 2022 23:31:41 +0000 (00:31 +0100)]
Rollup merge of #106069 - notriddle:notriddle/search-tabs, r=GuillaumeGomez

rustdoc: use a more evocative name for CSS/JS `#titles`

This renames the ID, which is only used in search results, to `#search-tabs`. Also changes the `.count` to a span, so it doesn't need its display mode to be overridden.

17 months agoRollup merge of #105975 - jeremystucki:rustc-remove-needless-lifetimes, r=eholk
Matthias Krüger [Fri, 23 Dec 2022 23:31:41 +0000 (00:31 +0100)]
Rollup merge of #105975 - jeremystucki:rustc-remove-needless-lifetimes, r=eholk

rustc: Remove needless lifetimes

17 months agoRollup merge of #105970 - Ezrashaw:add-docs+test-e0462, r=GuillaumeGomez
Matthias Krüger [Fri, 23 Dec 2022 23:31:40 +0000 (00:31 +0100)]
Rollup merge of #105970 - Ezrashaw:add-docs+test-e0462, r=GuillaumeGomez

docs/test: add UI test and long-form error docs for E0462

Another UI test/ docs combo.

r? ``@GuillaumeGomez``

17 months agoFix triagebot.toml
Michael Goulet [Fri, 23 Dec 2022 23:28:02 +0000 (23:28 +0000)]
Fix triagebot.toml

17 months agoCodegen test for derived `<` on trivial newtype [TEST ONLY]
Scott McMurray [Thu, 22 Dec 2022 21:44:51 +0000 (13:44 -0800)]
Codegen test for derived `<` on trivial newtype [TEST ONLY]

17 months agoAuto merge of #106088 - weihanglo:update-cargo, r=weihanglo
bors [Fri, 23 Dec 2022 23:01:08 +0000 (23:01 +0000)]
Auto merge of #106088 - weihanglo:update-cargo, r=weihanglo

Update cargo

7 commits in c994a4a638370bc7e0ffcbb0e2865afdfa7d4415..2381cbdb4e9b07090f552d34a44a529b6e620e44 2022-12-18 21:50:58 +0000 to 2022-12-23 12:19:27 +0000

- fix: deduplicate dependencies by artifact target (rust-lang/cargo#11478)
- Add warning if potentially-scrapable examples are skipped due to dev-dependencies (rust-lang/cargo#11503)
- Don't scrape examples from library targets by default (rust-lang/cargo#11499)
- Stabilize terminal-width (rust-lang/cargo#11494)
- Make sure that hash of `SourceId` is stable (rust-lang/cargo#11501)
- Use workspace lockfile when running `cargo package` and `cargo publish` (rust-lang/cargo#11477)
- Show `--help` if there is no man page for subcommand (rust-lang/cargo#11473)

r? `@ghost`

17 months agoAuto merge of #106087 - Nilstrieb:rollup-2m3nies, r=Nilstrieb
bors [Fri, 23 Dec 2022 19:46:36 +0000 (19:46 +0000)]
Auto merge of #106087 - Nilstrieb:rollup-2m3nies, r=Nilstrieb

Rollup of 6 pull requests

Successful merges:

 - #105661 (implement the skeleton of the updated trait solver)
 - #105853 (Make the pre-push script work on directories with spaces)
 - #106043 (Move tests)
 - #106048 (Run `tidy` in its own job in PR CI)
 - #106055 (Check arg expressions properly on error in `confirm_builtin_call`)
 - #106067 (A few metadata nits)

Failed merges:

r? `@ghost`
`@rustbot` modify labels: rollup

17 months agorustdoc: remove no-op CSS from `.docblock-short`
Michael Howell [Fri, 23 Dec 2022 18:42:47 +0000 (11:42 -0700)]
rustdoc: remove no-op CSS from `.docblock-short`

The rules `overflow:hidden` and `text-overflow:ellipses` only have an
effect if overflow occurs, which cannot happen because it will just line
wrap instead.

These rules definitely became obsolete by
https://github.com/rust-lang/rust/pull/77699, when the stylesheet was
decidedly changed to have line wrapping in short docblocks, but given the
bug it was fixing, this probably got broken earlier.

17 months agoMention and number the components of a race in the order the interpreter sees them
Ben Kimock [Fri, 23 Dec 2022 18:45:43 +0000 (13:45 -0500)]
Mention and number the components of a race in the order the interpreter sees them

17 months agoUse correct CSS pseudo-element selector
Guillaume Gomez [Fri, 23 Dec 2022 18:30:44 +0000 (19:30 +0100)]
Use correct CSS pseudo-element selector

17 months agoUpdate cargo
Weihang Lo [Fri, 23 Dec 2022 17:05:07 +0000 (17:05 +0000)]
Update cargo

7 commits in c994a4a638370bc7e0ffcbb0e2865afdfa7d4415..2381cbdb4e9b07090f552d34a44a529b6e620e44
2022-12-18 21:50:58 +0000 to 2022-12-23 12:19:27 +0000

- fix: deduplicate dependencies by artifact target (rust-lang/cargo#11478)
- Add warning if potentially-scrapable examples are skipped due to dev-dependencies (rust-lang/cargo#11503)
- Don't scrape examples from library targets by default (rust-lang/cargo#11499)
- Stabilize terminal-width (rust-lang/cargo#11494)
- Make sure that hash of `SourceId` is stable (rust-lang/cargo#11501)
- Use workspace lockfile when running `cargo package` and `cargo publish` (rust-lang/cargo#11477)
- Show `--help` if there is no man page for subcommand (rust-lang/cargo#11473)

17 months agoRollup merge of #106067 - Nilstrieb:meta-cleanup, r=petrochenkov
nils [Fri, 23 Dec 2022 17:02:16 +0000 (18:02 +0100)]
Rollup merge of #106067 - Nilstrieb:meta-cleanup, r=petrochenkov

A few metadata nits

Found while reading through the code. The `NOTE` is outdated now after #97376.

17 months agoRollup merge of #106055 - compiler-errors:too-many-calls, r=estebank
nils [Fri, 23 Dec 2022 17:02:15 +0000 (18:02 +0100)]
Rollup merge of #106055 - compiler-errors:too-many-calls, r=estebank

Check arg expressions properly on error in `confirm_builtin_call`

Makes sure we don't regress diagnostic output when we have an expr error nested inside of a bad fn call: https://github.com/rust-lang/rust/pull/105973#issuecomment-1363152232

Fixes #106030
Fixes #105244

17 months agoRollup merge of #106048 - fee1-dead-contrib:tidy-ci-continuation, r=jyn514
nils [Fri, 23 Dec 2022 17:02:15 +0000 (18:02 +0100)]
Rollup merge of #106048 - fee1-dead-contrib:tidy-ci-continuation, r=jyn514

Run `tidy` in its own job in PR CI

This duplicates mingw-check into two jobs where one job runs `tidy` only while the other job does not. The tidy job will not cancel other jobs on failure.

17 months agoRollup merge of #106043 - c410-f3r:moar-errors, r=petrochenkov
nils [Fri, 23 Dec 2022 17:02:14 +0000 (18:02 +0100)]
Rollup merge of #106043 - c410-f3r:moar-errors, r=petrochenkov

Move tests

r? ``@petrochenkov``

* 6470 is an ancient LLVM compilation bug
* 22375 to typeck because of https://github.com/rust-lang/rust/pull/23013

17 months agoRollup merge of #105853 - jyn514:prepush-windows, r=Mark-Simulacrum
nils [Fri, 23 Dec 2022 17:02:13 +0000 (18:02 +0100)]
Rollup merge of #105853 - jyn514:prepush-windows, r=Mark-Simulacrum

Make the pre-push script work on directories with spaces

As a secondary benefit, it's also a lot simpler.

cc `@caass` - would love to have a review if you have time :)

17 months agoRollup merge of #105661 - lcnr:evaluate-new, r=compiler-errors
nils [Fri, 23 Dec 2022 17:02:13 +0000 (18:02 +0100)]
Rollup merge of #105661 - lcnr:evaluate-new, r=compiler-errors

implement the skeleton of the updated trait solver

cc ```@rust-lang/initiative-trait-system-refactor```

This is mostly following the architecture discussed in the types team meetup.

After discussing the desired changes for the trait solver, we encountered cyclic dependencies between them. Most notably between changing evaluate to be canonical and returning inference constraints. We cannot canonicalize evaluate without returning inference constraints due to coinductive cycles. However, caching inference constraints also relies on canonicalization. Implementing both of these changes at once in-place is not feasible.

This somewhat closely mirrors the current `evaluate` implementation with the following notable differences:
- it moves `project` into the core solver, allowing us to correctly deal with coinductive projections (will be required for implied bounds, perfect derive)
- it changes trait solver overflow to be non-fatal (required to backcompat breakage from changes to the iteration order of nested goals, deferred projection equality, generally very useful)
- it returns inference constraints and canonicalizes inputs and outputs (required for a lot things, most notably merging fulfill and evaluate, and deferred projection equality)
- it is implemented to work with lazy normalization

A lot of things aren't yet implemented, but the remaining FIXMEs should all be fairly self-contained and parallelizable. If the architecture looks correct and is what we want here, I would like to quickly merge this and then split the work.

r? ```@compiler-errors``` / ```@rust-lang/types``` :3

17 months agoAuto merge of #105550 - gimbles:master, r=Nilstrieb
bors [Fri, 23 Dec 2022 16:57:21 +0000 (16:57 +0000)]
Auto merge of #105550 - gimbles:master, r=Nilstrieb

Use `DepKind` instead of `&'static str` in `QueryStackFrame`

`@rustbot` author

Fixes #105168

17 months agoIndicate anonymous lifetime
Jeremy Stucki [Fri, 23 Dec 2022 14:59:53 +0000 (15:59 +0100)]
Indicate anonymous lifetime

17 months agofix one more unaligned self.ptr, and add tests
Ralf Jung [Fri, 23 Dec 2022 14:49:23 +0000 (15:49 +0100)]
fix one more unaligned self.ptr, and add tests

17 months agoattempt to clarify what the backtrace belongs to when there could be ambiguity
Ralf Jung [Fri, 23 Dec 2022 14:39:14 +0000 (15:39 +0100)]
attempt to clarify what the backtrace belongs to when there could be ambiguity

17 months agofix IntoIter::drop on high-alignment ZST
Ralf Jung [Fri, 23 Dec 2022 14:08:56 +0000 (15:08 +0100)]
fix IntoIter::drop on high-alignment ZST

17 months agoAuto merge of #106053 - compiler-errors:incr-test-revision, r=Mark-Simulacrum
bors [Fri, 23 Dec 2022 13:37:11 +0000 (13:37 +0000)]
Auto merge of #106053 - compiler-errors:incr-test-revision, r=Mark-Simulacrum

Take revision into account in non-incremental-mode `// incremental` tests

A UI test I added in #105983 confusingly [failed](https://github.com/rust-lang/rust/pull/106031#issuecomment-1362558067) in a merge because two different revisions raced with each other for the same incremental directory for a (non-incremental-mode, i.e. `src/test/ui`) UI test.

Let's take the revision name into account when generating an incremental directory so that other UI tests that combine `// incremental` and `// revisions` won't race and cause possible flakiness in CI.

17 months agochar: µoptimise UTF-16 surrogates decoding
Michal Nazarewicz [Fri, 23 Dec 2022 12:38:03 +0000 (13:38 +0100)]
char: µoptimise UTF-16 surrogates decoding

According to Godbolt¹, on x86_64 using binary and produces slightly
better code than using subtraction.  Readability of both is pretty
much equivalent so might just as well use the shorter option.

¹ https://rust.godbolt.org/z/9jM3ejbMx

17 months agoUse DepKind instead of &str
gimbles [Fri, 23 Dec 2022 13:09:49 +0000 (18:39 +0530)]
Use DepKind instead of &str

17 months agoMove tests
Caio [Fri, 23 Dec 2022 11:05:00 +0000 (08:05 -0300)]
Move tests

17 months agoAuto merge of #106033 - ChrisDenton:bump-cfg-if, r=Mark-Simulacrum
bors [Fri, 23 Dec 2022 10:46:58 +0000 (10:46 +0000)]
Auto merge of #106033 - ChrisDenton:bump-cfg-if, r=Mark-Simulacrum

Remove old version of `cfg-if` by bumping `packed_simd_2` and `getrandom v0.2` versions

```console
> cargo update --package packed_simd_2 --package getrandom@0.2.0
    Updating crates.io index
    Removing cfg-if v0.1.10
    Updating getrandom v0.2.0 -> v0.2.8
    Updating packed_simd_2 v0.3.4 -> v0.3.8
```

`packed_simd_2` is only used as a dependency of `bytecount` which in turn is only used by `rustfmt`. I can't see any issue with the minor version bump.

The bigger jump is `getrandom@0.2.0` which is used by a number of things, but 0.2.8 is still semver compatible and there doesn't seem to be any worrying changes (see the [changelog](https://github.com/rust-random/getrandom/blob/master/CHANGELOG.md)). The only breaking change are the removal of XP, stdweb and CloudAbi support but these are not host targets and rustc lacks support for them in any case (stdweb development was [abandonded](https://rustsec.org/advisories/RUSTSEC-2020-0056.html), XP is [tier 3 and `no_std`](https://doc.rust-lang.org/beta/rustc/platform-support.html#tier-3) and CloubAbi is [no longer supported](https://github.com/rust-lang/rust/pull/78439)).

Note that this doesn't affect `getrandom@0.1.16` which is what std depends on and which is already using the latest version of `cfg-if` (besides, there are already plans to remove that entirely).

17 months agoUse u32 methods instead of manual shifting
Ayush Singh [Mon, 19 Dec 2022 09:22:02 +0000 (14:52 +0530)]
Use u32 methods instead of manual shifting

Switch to `to_be_bytes()` and `from_be_bytes()` instead of manual
shifting

This was suggested [`here`](https://github.com/rust-lang/rust/pull/105145#discussion_r1051418964)

Signed-off-by: Ayush Singh <ayushsingh1325@gmail.com>
17 months agoProvide more context on FileCheck failures
Nikita Popov [Fri, 23 Dec 2022 08:40:24 +0000 (09:40 +0100)]
Provide more context on FileCheck failures

FileCheck provides 5 lines of context by default. This is often
insufficient to analyze failures that happen in CI. Increase the
amount of context to 100 lines.

17 months agoAdd tests
Michael Goulet [Thu, 22 Dec 2022 18:36:46 +0000 (18:36 +0000)]
Add tests

17 months agoEagerly evaluate args
Michael Goulet [Thu, 22 Dec 2022 18:17:22 +0000 (18:17 +0000)]
Eagerly evaluate args

17 months agoAuto merge of #106070 - matthiaskrgr:rollup-jv9ctkl, r=matthiaskrgr
bors [Fri, 23 Dec 2022 02:44:32 +0000 (02:44 +0000)]
Auto merge of #106070 - matthiaskrgr:rollup-jv9ctkl, r=matthiaskrgr

Rollup of 6 pull requests

Successful merges:

 - #105978 (Mark `proc_macro_decls_static` as always used)
 - #106051 (Allow building std with cranelift)
 - #106056 (Make `sess.bug` much less noisy)
 - #106057 (Give a more helpful error for "trimmed_def_paths constructed")
 - #106058 (Fix the issue number in comment for as_local_call_operand)
 - #106059 (Avoid running the `Profile` step twice on `x setup`)

Failed merges:

r? `@ghost`
`@rustbot` modify labels: rollup

17 months agorustdoc: fix race condition in GUI test
Michael Howell [Fri, 23 Dec 2022 00:17:32 +0000 (17:17 -0700)]
rustdoc: fix race condition in GUI test

17 months agorustdoc: use a more evocative name for CSS/JS `#titles`
Michael Howell [Thu, 22 Dec 2022 22:52:34 +0000 (15:52 -0700)]
rustdoc: use a more evocative name for CSS/JS `#titles`

This renames the ID, which is only used in search results, to
`#search-tabs`. Also changes the `.count` to a span, so it doesn't need its
display mode to be overridden.

17 months agoRollup merge of #106059 - jyn514:setup-twice, r=Nilstrieb
Matthias Krüger [Fri, 23 Dec 2022 00:17:52 +0000 (01:17 +0100)]
Rollup merge of #106059 - jyn514:setup-twice, r=Nilstrieb

Avoid running the `Profile` step twice on `x setup`

Prevents runs like the following:
```
$ x setup
Welcome to the Rust project! What do you want to do with x.py?
a) library: Contribute to the standard library
b) compiler: Contribute to the compiler itself
c) codegen: Contribute to the compiler, and also modify LLVM or codegen
d) tools: Contribute to tools which depend on the compiler, but do not modify it directly (e.g. rustdoc, clippy, miri)
e) user: Install Rust from source
Please choose one (a/b/c/d/e): b

To get started, try one of the following commands:
- `x.py check`
- `x.py build`
- `x.py test`
For more suggestions, see https://rustc-dev-guide.rust-lang.org/building/suggested.html
`x.py` will now use the configuration at /home/nilsh/projects/rustfast/src/bootstrap/defaults/config.compiler.toml
Welcome to the Rust project! What do you want to do with x.py?
...
```

r? `@Nilstrieb`

17 months agoRollup merge of #106058 - tmiasko:68304, r=compiler-errors
Matthias Krüger [Fri, 23 Dec 2022 00:17:52 +0000 (01:17 +0100)]
Rollup merge of #106058 - tmiasko:68304, r=compiler-errors

Fix the issue number in comment for as_local_call_operand

17 months agoRollup merge of #106057 - jyn514:trimmed-def-paths-ice, r=compiler-errors
Matthias Krüger [Fri, 23 Dec 2022 00:17:51 +0000 (01:17 +0100)]
Rollup merge of #106057 - jyn514:trimmed-def-paths-ice, r=compiler-errors

Give a more helpful error for "trimmed_def_paths constructed"

cc https://rust-lang.zulipchat.com/#narrow/stream/122651-general/topic/ice.20debugging/near/315928294, https://github.com/rust-lang/rust/pull/106056

`@mejrs` do you think this would have helped you figure out the problem faster?

17 months agoRollup merge of #106056 - jyn514:quiet-bug, r=compiler-errors
Matthias Krüger [Fri, 23 Dec 2022 00:17:51 +0000 (01:17 +0100)]
Rollup merge of #106056 - jyn514:quiet-bug, r=compiler-errors

Make `sess.bug` much less noisy

cc https://rust-lang.zulipchat.com/#narrow/stream/122651-general/topic/ice.20debugging/near/315929150

Before:

<details>

```
   Compiling core v0.0.0 (C:\Users\Joshua Nelson\src\rust2\library\core)
error: internal compiler error: no warnings or errors encountered even though `delayed_good_path_bugs` issued

error: internal compiler error: oops
  |
  = note: delayed at    0: std::backtrace_rs::backtrace::trace_unsynchronized
             1: std::backtrace::Backtrace::disabled
             2: std::backtrace::Backtrace::force_capture
             3: <rustc_errors::Handler>::delay_good_path_bug::<&str>
             4: <rustc_interface::passes::QueryContext>::enter::<rustc_driver::run_compiler::{closure#1}::{closure#2}::{closure#2}, core::result::Result<(), rustc_errors::ErrorGuaranteed>>
             5: RINvMs2_NtCsiwHPejSviHg_15rustc_interface7queriesNtNtB8_9interface8Compiler5enterNCNCNvCs7PhwInflpyf_12rustc_driver12run_compilers_0s0_0INtNtCslM5znELOk5i_4core6result6ResultINtNtB2f_6option6OptionNtB6_6LinkerENtCshthk7JDUYGg_12rustc_errors15ErrorGuarante
             6: RINvCs6uSsza6NDuD_10rustc_span15with_source_mapINtNtCslM5znELOk5i_4core6result6ResultuNtCshthk7JDUYGg_12rustc_errors15ErrorGuaranteedENCNCINvNtCsiwHPejSviHg_15rustc_interface9interface12run_compilerBJ_NCNvCs7PhwInflpyf_12rustc_driver12run_compilers_0E00EB
             7: RINvMs_Cs9yvsqs6YnUZ_10scoped_tlsINtB5_9ScopedKeyNtCs6uSsza6NDuD_10rustc_span14SessionGlobalsE3setNCINvNtCsiwHPejSviHg_15rustc_interface9interface12run_compilerINtNtCslM5znELOk5i_4core6result6ResultuNtCshthk7JDUYGg_12rustc_errors15ErrorGuaranteedENCNvCs7P
             8: RINvNtNtCs5xszGlR5JQw_3std10sys_common9backtrace28___rust_begin_short_backtraceNCNCINvNtCsiwHPejSviHg_15rustc_interface4util31run_in_thread_pool_with_globalsNCINvNtB1o_9interface12run_compilerINtNtCslM5znELOk5i_4core6result6ResultuNtCshthk7JDUYGg_12rustc_
             9: RINvNtCs5xszGlR5JQw_3std9panicking3tryINtNtCslM5znELOk5i_4core6result6ResultuNtCshthk7JDUYGg_12rustc_errors15ErrorGuaranteedEINtNtNtBF_5panic11unwind_safe16AssertUnwindSafeNCNCINvMNtB4_6threadNtB2S_7Builder16spawn_unchecked_NCNCINvNtCsiwHPejSviHg_15rustc_
            10: <std::thread::Builder>::spawn_scoped::<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver::run_compiler::{closure#0}>::{closure#0}, ()>::{closure#0}::{closure#0}, ()>
            11: <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once
            12: std::sys::windows::thread::Thread::new
            13: BaseThreadInitThunk
            14: RtlUserThreadStart

thread 'rustc' panicked at 'Box<dyn Any>', compiler\rustc_errors\src\lib.rs:1610:13
stack backtrace:
   0:     0x7fffbe935a15 - std::backtrace_rs::backtrace::trace_unsynchronized::h2a29ea0a35c1f799
   1:     0x7fffbe968811 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h5e4ca8af47bfbcc0
   2:     0x7fffbe98aeab - core::fmt::write::h152a9de2569e7dc7
   3:     0x7fffbe961059 - std::io::Write::write_fmt::h2452e19093defac4
   4:     0x7fffbe96866b - std::sys_common::backtrace::print::h550d034f7b77d60a
   5:     0x7fffbe93be1b - std::panicking::default_hook::h3969ead74039b801
   6:     0x7fffbe93bbad - std::panicking::default_hook::h3969ead74039b801
   7:     0x7fffa5f0abe3 - rustc_driver[5b2ae43fbecaf219]::handle_options
   8:     0x7fffbe93c25b - std::panicking::rust_panic_with_hook::h32bbe3ce24999160
   9:     0x7fffa82baee5 - std[4086331e48bff2f6]::sys_common::backtrace::__rust_end_short_backtrace::<std[4086331e48bff2f6]::panicking::begin_panic<&str>::{closure#0}, !>
  10:     0x7fffa82bae89 - std[4086331e48bff2f6]::sys_common::backtrace::__rust_end_short_backtrace::<std[4086331e48bff2f6]::panicking::begin_panic<rustc_errors[cb829533098ec0fe]::ExplicitBug>::{closure#0}, !>
  11:     0x7fffa867ed89 - std[4086331e48bff2f6]::panicking::begin_panic::<rustc_errors[cb829533098ec0fe]::ExplicitBug>
  12:     0x7fffa8298de9 - <alloc[284c8fe3a98c29c4]::string::String as core[fda266aeadfb153a]::fmt::Write>::write_fmt
  13:     0x7fffa829b7e2 - <rustc_errors[cb829533098ec0fe]::HandlerInner>::flush_delayed::<core[fda266aeadfb153a]::iter::adapters::map::Map<alloc[284c8fe3a98c29c4]::vec::into_iter::IntoIter<rustc_errors[cb829533098ec0fe]::DelayedDiagnostic>, <rustc_errors[cb829533098ec0fe]::DelayedDiagnostic>::decorate>, &str>
  14:     0x7fffa8288638 - <rustc_errors[cb829533098ec0fe]::HandlerInner as core[fda266aeadfb153a]::ops::drop::Drop>::drop
  15:     0x7fffa5eb90e1 - core[fda266aeadfb153a]::ptr::drop_in_place::<rustc_errors[cb829533098ec0fe]::Handler>
  16:     0x7fffa5ebe9fd - core[fda266aeadfb153a]::ptr::drop_in_place::<rustc_session[e703468b2407e34a]::cgu_reuse_tracker::CguReuseTracker>
  17:     0x7fffa5ec0d7c - core[fda266aeadfb153a]::ptr::drop_in_place::<rustc_session[e703468b2407e34a]::session::Session>
  18:     0x7fffa5ebe41c - core[fda266aeadfb153a]::ptr::drop_in_place::<rustc_interface[d7cd35f07e7e6ecc]::interface::Compiler>
  19:     0x7fffa5eea05f - RINvCs6uSsza6NDuD_10rustc_span15with_source_mapINtNtCslM5znELOk5i_4core6result6ResultuNtCshthk7JDUYGg_12rustc_errors15ErrorGuaranteedENCNCINvNtCsiwHPejSviHg_15rustc_interface9interface12run_compilerBJ_NCNvCs7PhwInflpyf_12rustc_driver12run_compilers_0E00EB
  20:     0x7fffa5edbe3a - RINvMs_Cs9yvsqs6YnUZ_10scoped_tlsINtB5_9ScopedKeyNtCs6uSsza6NDuD_10rustc_span14SessionGlobalsE3setNCINvNtCsiwHPejSviHg_15rustc_interface9interface12run_compilerINtNtCslM5znELOk5i_4core6result6ResultuNtCshthk7JDUYGg_12rustc_errors15ErrorGuaranteedENCNvCs7P
  21:     0x7fffa5ef4ec9 - RINvNtNtCs5xszGlR5JQw_3std10sys_common9backtrace28___rust_begin_short_backtraceNCNCINvNtCsiwHPejSviHg_15rustc_interface4util31run_in_thread_pool_with_globalsNCINvNtB1o_9interface12run_compilerINtNtCslM5znELOk5i_4core6result6ResultuNtCshthk7JDUYGg_12rustc_
  22:     0x7fffa5ee9935 - RINvNtCs5xszGlR5JQw_3std9panicking3tryINtNtCslM5znELOk5i_4core6result6ResultuNtCshthk7JDUYGg_12rustc_errors15ErrorGuaranteedEINtNtNtBF_5panic11unwind_safe16AssertUnwindSafeNCNCINvMNtB4_6threadNtB2S_7Builder16spawn_unchecked_NCNCINvNtCsiwHPejSviHg_15rustc_
  23:     0x7fffa5f0d770 - <std[4086331e48bff2f6]::thread::Builder>::spawn_scoped::<rustc_interface[d7cd35f07e7e6ecc]::util::run_in_thread_pool_with_globals<rustc_interface[d7cd35f07e7e6ecc]::interface::run_compiler<(), rustc_driver[5b2ae43fbecaf219]::run_compiler::{closure#0}>::{closure#0}, ()>::{closure#0}::{closure#0}, ()>
  24:     0x7fffbe95b35b - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::hfcd927f7aebafa45
  25:     0x7fffbe9331d3 - std::sys::windows::thread::Thread::new::hf8f4c920eaebd965
  26:     0x7ff815877614 - BaseThreadInitThunk
  27:     0x7ff8166e26a1 - RtlUserThreadStart

note: the compiler unexpectedly panicked. this is a bug.

note: we would appreciate a bug report: https://github.com/rust-lang/rust/issues/new?labels=C-bug%2C+I-ICE%2C+T-compiler&template=ice.md

note: rustc 1.68.0-dev running on x86_64-pc-windows-msvc

note: compiler flags: --crate-type lib -C opt-level=3 -C embed-bitcode=no -C debuginfo=0 -Z unstable-options -C incremental=[REDACTED] -C symbol-mangling-version=legacy -Z unstable-options -Z unstable-options -Z macro-backtrace -C split-debuginfo=packed -C target-feature=+crt-static -C prefer-dynamic -C embed-bitcode=yes -Z crate-attr=doc(html_root_url="https://doc.rust-lang.org/nightly/") -Z binary-dep-depinfo -Z force-unstable-if-unmarked

note: some of the compiler flags provided by cargo are hidden

query stack during panic:
end of query stack
error: could not compile `core`
```

</details>

After:

<details>

```
   Compiling core v0.0.0 (C:\Users\Joshua Nelson\src\rust2\library\core)
error: internal compiler error: no warnings or errors encountered even though `delayed_good_path_bugs` issued

error: internal compiler error: oops
  |
  = note: delayed at    0: std::backtrace_rs::backtrace::trace_unsynchronized
             1: std::backtrace::Backtrace::disabled
             2: std::backtrace::Backtrace::force_capture
             3: <rustc_errors::Handler>::delay_good_path_bug::<&str>
             4: <rustc_interface::passes::QueryContext>::enter::<rustc_driver::run_compiler::{closure#1}::{closure#2}::{closure#2}, core::result::Result<(), rustc_errors::ErrorGuaranteed>>
             5: RINvMs2_NtCsiwHPejSviHg_15rustc_interface7queriesNtNtB8_9interface8Compiler5enterNCNCNvCs7PhwInflpyf_12rustc_driver12run_compilers_0s0_0INtNtCslM5znELOk5i_4core6result6ResultINtNtB2f_6option6OptionNtB6_6LinkerENtCshthk7JDUYGg_12rustc_errors15ErrorGuarante
             6: RINvCs6uSsza6NDuD_10rustc_span15with_source_mapINtNtCslM5znELOk5i_4core6result6ResultuNtCshthk7JDUYGg_12rustc_errors15ErrorGuaranteedENCNCINvNtCsiwHPejSviHg_15rustc_interface9interface12run_compilerBJ_NCNvCs7PhwInflpyf_12rustc_driver12run_compilers_0E00EB
             7: RINvMs_Cs9yvsqs6YnUZ_10scoped_tlsINtB5_9ScopedKeyNtCs6uSsza6NDuD_10rustc_span14SessionGlobalsE3setNCINvNtCsiwHPejSviHg_15rustc_interface9interface12run_compilerINtNtCslM5znELOk5i_4core6result6ResultuNtCshthk7JDUYGg_12rustc_errors15ErrorGuaranteedENCNvCs7P
             8: RINvNtNtCs5xszGlR5JQw_3std10sys_common9backtrace28___rust_begin_short_backtraceNCNCINvNtCsiwHPejSviHg_15rustc_interface4util31run_in_thread_pool_with_globalsNCINvNtB1o_9interface12run_compilerINtNtCslM5znELOk5i_4core6result6ResultuNtCshthk7JDUYGg_12rustc_
             9: RINvNtCs5xszGlR5JQw_3std9panicking3tryINtNtCslM5znELOk5i_4core6result6ResultuNtCshthk7JDUYGg_12rustc_errors15ErrorGuaranteedEINtNtNtBF_5panic11unwind_safe16AssertUnwindSafeNCNCINvMNtB4_6threadNtB2S_7Builder16spawn_unchecked_NCNCINvNtCsiwHPejSviHg_15rustc_
            10: <std::thread::Builder>::spawn_scoped::<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver::run_compiler::{closure#0}>::{closure#0}, ()>::{closure#0}::{closure#0}, ()>
            11: <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once
            12: std::sys::windows::thread::Thread::new
            13: BaseThreadInitThunk
            14: RtlUserThreadStart

note: the compiler unexpectedly panicked. this is a bug.

note: we would appreciate a bug report: https://github.com/rust-lang/rust/issues/new?labels=C-bug%2C+I-ICE%2C+T-compiler&template=ice.md

note: rustc 1.68.0-dev running on x86_64-pc-windows-msvc

note: compiler flags: --crate-type lib -C opt-level=3 -C embed-bitcode=no -C debuginfo=0 -Z unstable-options -C incremental=[REDACTED] -C symbol-mangling-version=legacy -Z unstable-options -Z unstable-options -Z macro-backtrace -C split-debuginfo=packed -C target-feature=+crt-static -C prefer-dynamic -C embed-bitcode=yes -Z crate-attr=doc(html_root_url="https://doc.rust-lang.org/nightly/") -Z binary-dep-depinfo -Z force-unstable-if-unmarked

note: some of the compiler flags provided by cargo are hidden

query stack during panic:
end of query stack
error: could not compile `core`
```

</details>

17 months agoRollup merge of #106051 - jyn514:cranelift-std, r=bjorn3
Matthias Krüger [Fri, 23 Dec 2022 00:17:50 +0000 (01:17 +0100)]
Rollup merge of #106051 - jyn514:cranelift-std, r=bjorn3

Allow building std with cranelift

- Don't pass llvm-specific args when using cranelift
- Don't use `asm` in compiler_builtins when using cranelift

r? `@bjorn3` cc `@Mark-Simulacrum`

17 months agoRollup merge of #105978 - jyn514:unused_proc_macro_decl, r=tmiasko
Matthias Krüger [Fri, 23 Dec 2022 00:17:50 +0000 (01:17 +0100)]
Rollup merge of #105978 - jyn514:unused_proc_macro_decl, r=tmiasko

Mark `proc_macro_decls_static` as always used

This would have avoided a bug in https://github.com/rust-lang/rust/pull/104860.

In practice this shouldn't matter since nothing uses the query other than the `dead_code` lint, but this isn't documented as an internal-only query so it seems nice for it to be accurate. I think for `dead_code` it doesn't matter because the relevant code is generated by `rustc_builtin_macros` and isn't linted.

I think `@tmiasko` or `@bjorn3` would be a good reviewer?

r? `@tmiasko`

17 months agoAuto merge of #105036 - jyn514:cargo-docs, r=Mark-Simulacrum
bors [Fri, 23 Dec 2022 00:02:15 +0000 (00:02 +0000)]
Auto merge of #105036 - jyn514:cargo-docs, r=Mark-Simulacrum

Support documenting cargo

The primary motivation is to have the cargo docs show up on https://doc.rust-lang.org/nightly/nightly-rustc/cargo, but as a nice side effect this makes `x doc cargo` work locally.

cc `@rust-lang/cargo`

17 months agoA few metadata nits
Nilstrieb [Thu, 22 Dec 2022 22:21:00 +0000 (23:21 +0100)]
A few metadata nits

17 months agodocs/test: add UI test and long-form error docs for E0462
Ezra Shaw [Tue, 20 Dec 2022 10:30:14 +0000 (23:30 +1300)]
docs/test: add UI test and long-form error docs for E0462

17 months agoAuto merge of #106054 - matthiaskrgr:rollup-38epsfh, r=matthiaskrgr
bors [Thu, 22 Dec 2022 20:48:33 +0000 (20:48 +0000)]
Auto merge of #106054 - matthiaskrgr:rollup-38epsfh, r=matthiaskrgr

Rollup of 6 pull requests

Successful merges:

 - #105567 (KCFI test: Also support LLVM 16 output)
 - #105847 (Ensure param-env is const before calling `eval_to_valtree`)
 - #105983 (Add a missing early return in drop tracking `handle_uninhabited_return`)
 - #106027 (rustdoc: simplify CSS and DOM for more-scraped-examples)
 - #106035 (Migrate search tab title color to CSS variable)
 - #106037 (Add regression test for #94293)

Failed merges:

r? `@ghost`
`@rustbot` modify labels: rollup

17 months agoSupport documenting Cargo
Joshua Nelson [Mon, 28 Nov 2022 23:10:44 +0000 (18:10 -0500)]
Support documenting Cargo

The primary motivation is to have the cargo docs show up on https://doc.rust-lang.org/nightly/nightly-rustc/cargo, but as a nice side effect this makes `x doc cargo` work locally.

17 months agoAdd a (1) and (2) to the data race errors
Ben Kimock [Thu, 22 Dec 2022 19:24:10 +0000 (14:24 -0500)]
Add a (1) and (2) to the data race errors

17 months agoAvoid running the `Profile` step twice on `x setup`
Joshua Nelson [Thu, 22 Dec 2022 19:21:48 +0000 (13:21 -0600)]
Avoid running the `Profile` step twice on `x setup`

Prevents runs like the following:
```
$ x setup
Welcome to the Rust project! What do you want to do with x.py?
a) library: Contribute to the standard library
b) compiler: Contribute to the compiler itself
c) codegen: Contribute to the compiler, and also modify LLVM or codegen
d) tools: Contribute to tools which depend on the compiler, but do not modify it directly (e.g. rustdoc, clippy, miri)
e) user: Install Rust from source
Please choose one (a/b/c/d/e): b

To get started, try one of the following commands:
- `x.py check`
- `x.py build`
- `x.py test`
For more suggestions, see https://rustc-dev-guide.rust-lang.org/building/suggested.html
`x.py` will now use the configuration at /home/nilsh/projects/rustfast/src/bootstrap/defaults/config.compiler.toml
Welcome to the Rust project! What do you want to do with x.py?
...
```

17 months agoGive a more helpful error for "trimmed_def_paths construted"
Joshua Nelson [Thu, 22 Dec 2022 18:57:47 +0000 (12:57 -0600)]
Give a more helpful error for "trimmed_def_paths construted"

17 months agoFix the issue number in comment for as_local_call_operand
Tomasz Miąsko [Thu, 22 Dec 2022 00:00:00 +0000 (00:00 +0000)]
Fix the issue number in comment for as_local_call_operand

17 months agoMake `sess.bug` much less noisy
Joshua Nelson [Thu, 22 Dec 2022 18:43:27 +0000 (12:43 -0600)]
Make `sess.bug` much less noisy

Before:

```
   Compiling core v0.0.0 (C:\Users\Joshua Nelson\src\rust2\library\core)
error: internal compiler error: no warnings or errors encountered even though `delayed_good_path_bugs` issued

error: internal compiler error: oops
  |
  = note: delayed at    0: std::backtrace_rs::backtrace::trace_unsynchronized
             1: std::backtrace::Backtrace::disabled
             2: std::backtrace::Backtrace::force_capture
             3: <rustc_errors::Handler>::delay_good_path_bug::<&str>
             4: <rustc_interface::passes::QueryContext>::enter::<rustc_driver::run_compiler::{closure#1}::{closure#2}::{closure#2}, core::result::Result<(), rustc_errors::ErrorGuaranteed>>
             5: RINvMs2_NtCsiwHPejSviHg_15rustc_interface7queriesNtNtB8_9interface8Compiler5enterNCNCNvCs7PhwInflpyf_12rustc_driver12run_compilers_0s0_0INtNtCslM5znELOk5i_4core6result6ResultINtNtB2f_6option6OptionNtB6_6LinkerENtCshthk7JDUYGg_12rustc_errors15ErrorGuarante
             6: RINvCs6uSsza6NDuD_10rustc_span15with_source_mapINtNtCslM5znELOk5i_4core6result6ResultuNtCshthk7JDUYGg_12rustc_errors15ErrorGuaranteedENCNCINvNtCsiwHPejSviHg_15rustc_interface9interface12run_compilerBJ_NCNvCs7PhwInflpyf_12rustc_driver12run_compilers_0E00EB
             7: RINvMs_Cs9yvsqs6YnUZ_10scoped_tlsINtB5_9ScopedKeyNtCs6uSsza6NDuD_10rustc_span14SessionGlobalsE3setNCINvNtCsiwHPejSviHg_15rustc_interface9interface12run_compilerINtNtCslM5znELOk5i_4core6result6ResultuNtCshthk7JDUYGg_12rustc_errors15ErrorGuaranteedENCNvCs7P
             8: RINvNtNtCs5xszGlR5JQw_3std10sys_common9backtrace28___rust_begin_short_backtraceNCNCINvNtCsiwHPejSviHg_15rustc_interface4util31run_in_thread_pool_with_globalsNCINvNtB1o_9interface12run_compilerINtNtCslM5znELOk5i_4core6result6ResultuNtCshthk7JDUYGg_12rustc_
             9: RINvNtCs5xszGlR5JQw_3std9panicking3tryINtNtCslM5znELOk5i_4core6result6ResultuNtCshthk7JDUYGg_12rustc_errors15ErrorGuaranteedEINtNtNtBF_5panic11unwind_safe16AssertUnwindSafeNCNCINvMNtB4_6threadNtB2S_7Builder16spawn_unchecked_NCNCINvNtCsiwHPejSviHg_15rustc_
            10: <std::thread::Builder>::spawn_scoped::<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver::run_compiler::{closure#0}>::{closure#0}, ()>::{closure#0}::{closure#0}, ()>
            11: <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once
            12: std::sys::windows::thread::Thread::new
            13: BaseThreadInitThunk
            14: RtlUserThreadStart

thread 'rustc' panicked at 'Box<dyn Any>', compiler\rustc_errors\src\lib.rs:1610:13
stack backtrace:
   0:     0x7fffbe935a15 - std::backtrace_rs::backtrace::trace_unsynchronized::h2a29ea0a35c1f799
   1:     0x7fffbe968811 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h5e4ca8af47bfbcc0
   2:     0x7fffbe98aeab - core::fmt::write::h152a9de2569e7dc7
   3:     0x7fffbe961059 - std::io::Write::write_fmt::h2452e19093defac4
   4:     0x7fffbe96866b - std::sys_common::backtrace::print::h550d034f7b77d60a
   5:     0x7fffbe93be1b - std::panicking::default_hook::h3969ead74039b801
   6:     0x7fffbe93bbad - std::panicking::default_hook::h3969ead74039b801
   7:     0x7fffa5f0abe3 - rustc_driver[5b2ae43fbecaf219]::handle_options
   8:     0x7fffbe93c25b - std::panicking::rust_panic_with_hook::h32bbe3ce24999160
   9:     0x7fffa82baee5 - std[4086331e48bff2f6]::sys_common::backtrace::__rust_end_short_backtrace::<std[4086331e48bff2f6]::panicking::begin_panic<&str>::{closure#0}, !>
  10:     0x7fffa82bae89 - std[4086331e48bff2f6]::sys_common::backtrace::__rust_end_short_backtrace::<std[4086331e48bff2f6]::panicking::begin_panic<rustc_errors[cb829533098ec0fe]::ExplicitBug>::{closure#0}, !>
  11:     0x7fffa867ed89 - std[4086331e48bff2f6]::panicking::begin_panic::<rustc_errors[cb829533098ec0fe]::ExplicitBug>
  12:     0x7fffa8298de9 - <alloc[284c8fe3a98c29c4]::string::String as core[fda266aeadfb153a]::fmt::Write>::write_fmt
  13:     0x7fffa829b7e2 - <rustc_errors[cb829533098ec0fe]::HandlerInner>::flush_delayed::<core[fda266aeadfb153a]::iter::adapters::map::Map<alloc[284c8fe3a98c29c4]::vec::into_iter::IntoIter<rustc_errors[cb829533098ec0fe]::DelayedDiagnostic>, <rustc_errors[cb829533098ec0fe]::DelayedDiagnostic>::decorate>, &str>
  14:     0x7fffa8288638 - <rustc_errors[cb829533098ec0fe]::HandlerInner as core[fda266aeadfb153a]::ops::drop::Drop>::drop
  15:     0x7fffa5eb90e1 - core[fda266aeadfb153a]::ptr::drop_in_place::<rustc_errors[cb829533098ec0fe]::Handler>
  16:     0x7fffa5ebe9fd - core[fda266aeadfb153a]::ptr::drop_in_place::<rustc_session[e703468b2407e34a]::cgu_reuse_tracker::CguReuseTracker>
  17:     0x7fffa5ec0d7c - core[fda266aeadfb153a]::ptr::drop_in_place::<rustc_session[e703468b2407e34a]::session::Session>
  18:     0x7fffa5ebe41c - core[fda266aeadfb153a]::ptr::drop_in_place::<rustc_interface[d7cd35f07e7e6ecc]::interface::Compiler>
  19:     0x7fffa5eea05f - RINvCs6uSsza6NDuD_10rustc_span15with_source_mapINtNtCslM5znELOk5i_4core6result6ResultuNtCshthk7JDUYGg_12rustc_errors15ErrorGuaranteedENCNCINvNtCsiwHPejSviHg_15rustc_interface9interface12run_compilerBJ_NCNvCs7PhwInflpyf_12rustc_driver12run_compilers_0E00EB
  20:     0x7fffa5edbe3a - RINvMs_Cs9yvsqs6YnUZ_10scoped_tlsINtB5_9ScopedKeyNtCs6uSsza6NDuD_10rustc_span14SessionGlobalsE3setNCINvNtCsiwHPejSviHg_15rustc_interface9interface12run_compilerINtNtCslM5znELOk5i_4core6result6ResultuNtCshthk7JDUYGg_12rustc_errors15ErrorGuaranteedENCNvCs7P
  21:     0x7fffa5ef4ec9 - RINvNtNtCs5xszGlR5JQw_3std10sys_common9backtrace28___rust_begin_short_backtraceNCNCINvNtCsiwHPejSviHg_15rustc_interface4util31run_in_thread_pool_with_globalsNCINvNtB1o_9interface12run_compilerINtNtCslM5znELOk5i_4core6result6ResultuNtCshthk7JDUYGg_12rustc_
  22:     0x7fffa5ee9935 - RINvNtCs5xszGlR5JQw_3std9panicking3tryINtNtCslM5znELOk5i_4core6result6ResultuNtCshthk7JDUYGg_12rustc_errors15ErrorGuaranteedEINtNtNtBF_5panic11unwind_safe16AssertUnwindSafeNCNCINvMNtB4_6threadNtB2S_7Builder16spawn_unchecked_NCNCINvNtCsiwHPejSviHg_15rustc_
  23:     0x7fffa5f0d770 - <std[4086331e48bff2f6]::thread::Builder>::spawn_scoped::<rustc_interface[d7cd35f07e7e6ecc]::util::run_in_thread_pool_with_globals<rustc_interface[d7cd35f07e7e6ecc]::interface::run_compiler<(), rustc_driver[5b2ae43fbecaf219]::run_compiler::{closure#0}>::{closure#0}, ()>::{closure#0}::{closure#0}, ()>
  24:     0x7fffbe95b35b - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::hfcd927f7aebafa45
  25:     0x7fffbe9331d3 - std::sys::windows::thread::Thread::new::hf8f4c920eaebd965
  26:     0x7ff815877614 - BaseThreadInitThunk
  27:     0x7ff8166e26a1 - RtlUserThreadStart

note: the compiler unexpectedly panicked. this is a bug.

note: we would appreciate a bug report: https://github.com/rust-lang/rust/issues/new?labels=C-bug%2C+I-ICE%2C+T-compiler&template=ice.md

note: rustc 1.68.0-dev running on x86_64-pc-windows-msvc

note: compiler flags: --crate-type lib -C opt-level=3 -C embed-bitcode=no -C debuginfo=0 -Z unstable-options -C incremental=[REDACTED] -C symbol-mangling-version=legacy -Z unstable-options -Z unstable-options -Z macro-backtrace -C split-debuginfo=packed -C target-feature=+crt-static -C prefer-dynamic -C embed-bitcode=yes -Z crate-attr=doc(html_root_url="https://doc.rust-lang.org/nightly/") -Z binary-dep-depinfo -Z force-unstable-if-unmarked

note: some of the compiler flags provided by cargo are hidden

query stack during panic:
end of query stack
error: could not compile `core`
```

After:
```
   Compiling core v0.0.0 (C:\Users\Joshua Nelson\src\rust2\library\core)
error: internal compiler error: no warnings or errors encountered even though `delayed_good_path_bugs` issued

error: internal compiler error: oops
  |
  = note: delayed at    0: std::backtrace_rs::backtrace::trace_unsynchronized
             1: std::backtrace::Backtrace::disabled
             2: std::backtrace::Backtrace::force_capture
             3: <rustc_errors::Handler>::delay_good_path_bug::<&str>
             4: <rustc_interface::passes::QueryContext>::enter::<rustc_driver::run_compiler::{closure#1}::{closure#2}::{closure#2}, core::result::Result<(), rustc_errors::ErrorGuaranteed>>
             5: RINvMs2_NtCsiwHPejSviHg_15rustc_interface7queriesNtNtB8_9interface8Compiler5enterNCNCNvCs7PhwInflpyf_12rustc_driver12run_compilers_0s0_0INtNtCslM5znELOk5i_4core6result6ResultINtNtB2f_6option6OptionNtB6_6LinkerENtCshthk7JDUYGg_12rustc_errors15ErrorGuarante
             6: RINvCs6uSsza6NDuD_10rustc_span15with_source_mapINtNtCslM5znELOk5i_4core6result6ResultuNtCshthk7JDUYGg_12rustc_errors15ErrorGuaranteedENCNCINvNtCsiwHPejSviHg_15rustc_interface9interface12run_compilerBJ_NCNvCs7PhwInflpyf_12rustc_driver12run_compilers_0E00EB
             7: RINvMs_Cs9yvsqs6YnUZ_10scoped_tlsINtB5_9ScopedKeyNtCs6uSsza6NDuD_10rustc_span14SessionGlobalsE3setNCINvNtCsiwHPejSviHg_15rustc_interface9interface12run_compilerINtNtCslM5znELOk5i_4core6result6ResultuNtCshthk7JDUYGg_12rustc_errors15ErrorGuaranteedENCNvCs7P
             8: RINvNtNtCs5xszGlR5JQw_3std10sys_common9backtrace28___rust_begin_short_backtraceNCNCINvNtCsiwHPejSviHg_15rustc_interface4util31run_in_thread_pool_with_globalsNCINvNtB1o_9interface12run_compilerINtNtCslM5znELOk5i_4core6result6ResultuNtCshthk7JDUYGg_12rustc_
             9: RINvNtCs5xszGlR5JQw_3std9panicking3tryINtNtCslM5znELOk5i_4core6result6ResultuNtCshthk7JDUYGg_12rustc_errors15ErrorGuaranteedEINtNtNtBF_5panic11unwind_safe16AssertUnwindSafeNCNCINvMNtB4_6threadNtB2S_7Builder16spawn_unchecked_NCNCINvNtCsiwHPejSviHg_15rustc_
            10: <std::thread::Builder>::spawn_scoped::<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver::run_compiler::{closure#0}>::{closure#0}, ()>::{closure#0}::{closure#0}, ()>
            11: <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once
            12: std::sys::windows::thread::Thread::new
            13: BaseThreadInitThunk
            14: RtlUserThreadStart

note: the compiler unexpectedly panicked. this is a bug.

note: we would appreciate a bug report: https://github.com/rust-lang/rust/issues/new?labels=C-bug%2C+I-ICE%2C+T-compiler&template=ice.md

note: rustc 1.68.0-dev running on x86_64-pc-windows-msvc

note: compiler flags: --crate-type lib -C opt-level=3 -C embed-bitcode=no -C debuginfo=0 -Z unstable-options -C incremental=[REDACTED] -C symbol-mangling-version=legacy -Z unstable-options -Z unstable-options -Z macro-backtrace -C split-debuginfo=packed -C target-feature=+crt-static -C prefer-dynamic -C embed-bitcode=yes -Z crate-attr=doc(html_root_url="https://doc.rust-lang.org/nightly/") -Z binary-dep-depinfo -Z force-unstable-if-unmarked

note: some of the compiler flags provided by cargo are hidden

query stack during panic:
end of query stack
error: could not compile `core`
```

17 months agoRollup merge of #106037 - JohnTitor:issue-94293, r=lcnr
Matthias Krüger [Thu, 22 Dec 2022 18:36:15 +0000 (19:36 +0100)]
Rollup merge of #106037 - JohnTitor:issue-94293, r=lcnr

Add regression test for #94293

Closes #94293
r? ```@lcnr```

Signed-off-by: Yuki Okushi <jtitor@2k36.org>
17 months agoRollup merge of #106035 - GuillaumeGomez:migrate-css-var-search-tab-title-color,...
Matthias Krüger [Thu, 22 Dec 2022 18:36:14 +0000 (19:36 +0100)]
Rollup merge of #106035 - GuillaumeGomez:migrate-css-var-search-tab-title-color, r=notriddle

Migrate search tab title color to CSS variable

r? ```@notriddle```

17 months agoRollup merge of #106027 - notriddle:notriddle/more-scraped-examples-inner, r=Guillaum...
Matthias Krüger [Thu, 22 Dec 2022 18:36:14 +0000 (19:36 +0100)]
Rollup merge of #106027 - notriddle:notriddle/more-scraped-examples-inner, r=GuillaumeGomez

rustdoc: simplify CSS and DOM for more-scraped-examples

This gets rid of the more-scraped-examples-inner wrapper, instead nesting the children directly and using absolute positioning for the toggle line.

17 months agoRollup merge of #105983 - compiler-errors:issue-105981, r=tmiasko
Matthias Krüger [Thu, 22 Dec 2022 18:36:13 +0000 (19:36 +0100)]
Rollup merge of #105983 - compiler-errors:issue-105981, r=tmiasko

Add a missing early return in drop tracking `handle_uninhabited_return`

This return is needed so we don't call `Ty::is_inhabited_from` from a type with ty/ct vars in it.

Fixes #105981

17 months agoRollup merge of #105847 - compiler-errors:issue-104396, r=oli-obk
Matthias Krüger [Thu, 22 Dec 2022 18:36:13 +0000 (19:36 +0100)]
Rollup merge of #105847 - compiler-errors:issue-104396, r=oli-obk

Ensure param-env is const before calling `eval_to_valtree`

Other queries call `ParamEnv::with_const` *inside* of the query itself (e.g. `const_eval_global_id_for_typeck`), so this could alternatively be moved into the provider of `eval_to_valtree` instead. I don't have a particularly strong opinion, though *theoretically* caching is better if we make the query keys more constrained.

I'm not exactly sure how this is an effect of the `-Zmir-opt-level=3` flag. Maybe something about the inliner causes us to inline an unevaluated const into a body where it can be evaluated, but where it has not yet been normalized.

This seems likely, since we're inlining `from_fn_1::<{ N / 2 }, _>` in `from_fn_2`, which means that we will need to evaluate that constant during the const prop pass after inlining.

Fixes #104396

17 months agoRollup merge of #105567 - TimNN:kcfi16, r=nikic
Matthias Krüger [Thu, 22 Dec 2022 18:36:12 +0000 (19:36 +0100)]
Rollup merge of #105567 - TimNN:kcfi16, r=nikic

KCFI test: Also support LLVM 16 output

With a regex we can support the LLVM 16 output now already (and there are some third-party build bots that test Rust with LLVM head, like https://buildkite.com/llvm-project/rust-llvm-integrate-prototype/builds?branch=master).

cc ```@rcvalle```

17 months agoDeduplicate check_expr in builtin calls with error
Michael Goulet [Mon, 5 Dec 2022 01:42:22 +0000 (01:42 +0000)]
Deduplicate check_expr in builtin calls with error