]> git.lizzy.rs Git - rust.git/log
rust.git
21 months agoAuto merge of #98457 - japaric:gh98378, r=m-ou-se
bors [Sun, 25 Sep 2022 04:12:30 +0000 (04:12 +0000)]
Auto merge of #98457 - japaric:gh98378, r=m-ou-se

make Condvar, Mutex, RwLock const constructors work with the `unsupported` impl

applying this patch locally to the `rust-src` component fixes #98378

however, the solution seems wrong to me because PR #97791 didn't add any `rustc_const_stable` attribute to underlying implementations like `std::sys::unix::futex`, so I must be missing something about how const-stability is checked ... maybe the `restricted_std` feature (gate?) has an effect?

fixes #98378
fixes #98293 (probably)

21 months agoAuto merge of #102169 - scottmcm:constify-some-conditions, r=thomcc
bors [Sun, 25 Sep 2022 01:20:11 +0000 (01:20 +0000)]
Auto merge of #102169 - scottmcm:constify-some-conditions, r=thomcc

Make ZST checks in core/alloc more readable

There's a bunch of these checks because of special handing for ZSTs in various unsafe implementations of stuff.

This lets them be `T::IS_ZST` instead of `mem::size_of::<T>() == 0` every time, making them both more readable and more terse.

*Not* proposed for stabilization.  Would be `pub(crate)` except `alloc` wants to use it too.

(And while it doesn't matter now, if we ever get something like #85836 making it a const can help codegen be simpler.)

21 months agoAuto merge of #102040 - TaKO8Ki:separate-definitions-and-hir-owners, r=cjgillot
bors [Sat, 24 Sep 2022 22:42:07 +0000 (22:42 +0000)]
Auto merge of #102040 - TaKO8Ki:separate-definitions-and-hir-owners, r=cjgillot

Separate definitions and HIR owners in the type system

Fixes #83158

r? `@cjgillot`

21 months agoAuto merge of #98483 - dvtkrlbs:bootstrap-dist, r=jyn514
bors [Sat, 24 Sep 2022 20:00:51 +0000 (20:00 +0000)]
Auto merge of #98483 - dvtkrlbs:bootstrap-dist, r=jyn514

Distribute bootstrap in CI

This pre-compiles bootstrap from source and adds it to the existing `rust-dev` component. There are two main goals here:
1. Make it faster to build rust from source, both the first time and incrementally
2. Make it easier to add non-python entrypoints, since they can call out to bootstrap directly rather than having to figure out the right flags to pre-compile it. This second part is still in a bit of flux, see the tracking issue below for more information.

There are also several changes to make bootstrap able to run on a machine other than the one it was built (particularly around `config.src` and `config.out` detection). I (`@jyn514)` am slightly concerned these will regress unless tested - maybe we should add an automated test that runs bootstrap in a chroot or something? Unclear whether the effort is worth the test coverage.

Helps with https://github.com/rust-lang/rust/issues/94829.

21 months agoAdd some more documentation
Scott McMurray [Sat, 24 Sep 2022 19:12:41 +0000 (12:12 -0700)]
Add some more documentation

21 months agoCopy `bootstrap.exe` on Windows, not `bootstrap`
Joshua Nelson [Sat, 24 Sep 2022 18:32:19 +0000 (13:32 -0500)]
Copy `bootstrap.exe` on Windows, not `bootstrap`

21 months agoAuto merge of #102234 - matthiaskrgr:rollup-5cb20l1, r=matthiaskrgr
bors [Sat, 24 Sep 2022 14:37:01 +0000 (14:37 +0000)]
Auto merge of #102234 - matthiaskrgr:rollup-5cb20l1, r=matthiaskrgr

Rollup of 8 pull requests

Successful merges:

 - #100823 (Refactor some `std` code that works with pointer offstes)
 - #102088 (Fix wrongly refactored Lift impl)
 - #102109 (resolve: Set effective visibilities for imports more precisely)
 - #102186 (Add const_closure, Constify Try trait)
 - #102203 (rustdoc: remove no-op CSS `#source-sidebar { z-index }`)
 - #102204 (Make `ManuallyDrop` satisfy `~const Destruct`)
 - #102210 (diagnostics: avoid syntactically invalid suggestion in if conditionals)
 - #102226 (bootstrap/miri: switch to non-deprecated env var for setting the sysroot folder)

Failed merges:

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

21 months agoseparate definitions and `HIR` owners
Takayuki Maeda [Tue, 20 Sep 2022 05:11:23 +0000 (14:11 +0900)]
separate definitions and `HIR` owners

fix a ui test

use `into`

fix clippy ui test

fix a run-make-fulldeps test

implement `IntoQueryParam<DefId>` for `OwnerId`

use `OwnerId` for more queries

change the type of `ParentOwnerIterator::Item` to `(OwnerId, OwnerNode)`

21 months agoRollup merge of #102226 - RalfJung:miri-sysroot-build, r=oli-obk
Matthias Krüger [Sat, 24 Sep 2022 12:29:56 +0000 (14:29 +0200)]
Rollup merge of #102226 - RalfJung:miri-sysroot-build, r=oli-obk

bootstrap/miri: switch to non-deprecated env var for setting the sysroot folder

r? `@oli-obk`

21 months agoRollup merge of #102210 - notriddle:notriddle/did-you-mean, r=cjgillot
Matthias Krüger [Sat, 24 Sep 2022 12:29:56 +0000 (14:29 +0200)]
Rollup merge of #102210 - notriddle:notriddle/did-you-mean, r=cjgillot

diagnostics: avoid syntactically invalid suggestion in if conditionals

Fixes #101065

21 months agoRollup merge of #102204 - fee1-dead-contrib:manually-drop-trivially-drop, r=oli-obk
Matthias Krüger [Sat, 24 Sep 2022 12:29:55 +0000 (14:29 +0200)]
Rollup merge of #102204 - fee1-dead-contrib:manually-drop-trivially-drop, r=oli-obk

Make `ManuallyDrop` satisfy `~const Destruct`

21 months agoRollup merge of #102203 - notriddle:notriddle/source-sidebar, r=GuillaumeGomez
Matthias Krüger [Sat, 24 Sep 2022 12:29:55 +0000 (14:29 +0200)]
Rollup merge of #102203 - notriddle:notriddle/source-sidebar, r=GuillaumeGomez

rustdoc: remove no-op CSS `#source-sidebar { z-index }`

This rule became redundant in 07e3f998b1ceb4b8d2a7992782e60f5e776aa114. When `#source-sidebar` became nested below `.sidebar`, it went from being `position: fixed` to `position: static`, and according to MDN's [z-index] documentation, this means it has no effect.

[z-index]: https://developer.mozilla.org/en-US/docs/Web/CSS/z-index

21 months agoRollup merge of #102186 - ink-feather-org:const_try_trait, r=fee1-dead
Matthias Krüger [Sat, 24 Sep 2022 12:29:54 +0000 (14:29 +0200)]
Rollup merge of #102186 - ink-feather-org:const_try_trait, r=fee1-dead

Add const_closure, Constify Try trait

Adds a struct for creating const `FnMut` closures (for now just copy pasted form my [const_closure](https://crates.io/crates/const_closure) crate).
I'm not sure if this way is how it should be done.
The `ConstFnClosure` and `ConstFnOnceClosure` structs can probably also be entirely removed.

This is then used to constify the try trait.

Not sure if i should add const_closure in its own pr and maybe make it public behind a perma-unstable feature gate.

cc ```@fee1-dead```  ```@rust-lang/wg-const-eval```

21 months agoRollup merge of #102109 - petrochenkov:addids, r=oli-obk
Matthias Krüger [Sat, 24 Sep 2022 12:29:53 +0000 (14:29 +0200)]
Rollup merge of #102109 - petrochenkov:addids, r=oli-obk

resolve: Set effective visibilities for imports more precisely

Instead of setting them for all primary and additional IDs of the import, only set them for the binding's true ID.

21 months agoRollup merge of #102088 - oli-obk:cleanups, r=bjorn3
Matthias Krüger [Sat, 24 Sep 2022 12:29:53 +0000 (14:29 +0200)]
Rollup merge of #102088 - oli-obk:cleanups, r=bjorn3

Fix wrongly refactored Lift impl

see https://github.com/rust-lang/rust/pull/101858#issuecomment-1252713639

r? ``@bjorn3``

21 months agoRollup merge of #100823 - WaffleLapkin:less_offsets, r=scottmcm
Matthias Krüger [Sat, 24 Sep 2022 12:29:52 +0000 (14:29 +0200)]
Rollup merge of #100823 - WaffleLapkin:less_offsets, r=scottmcm

Refactor some `std` code that works with pointer offstes

This PR replaces `pointer::offset` in standard library with `pointer::add` and `pointer::sub`, [re]moving some casts and using `.addr()` while we are at it.

This is a more complicated refactor than all other sibling PRs, so take a closer look when reviewing, please 😃  (though I've checked this multiple times and it looks fine).

r? ````@scottmcm````

_split off from #100746, continuation of #100822_

21 months agoAuto merge of #102167 - thomcc:exclusive-inline, r=scottmcm
bors [Sat, 24 Sep 2022 12:17:53 +0000 (12:17 +0000)]
Auto merge of #102167 - thomcc:exclusive-inline, r=scottmcm

Add `#[inline]` to trivial functions on `core::sync::Exclusive`

When optimizing for size things like these sometimes don't inlined even though they're generic. This is bad because they're no-ops.

Only dodgy one is poll I guess since it forwards to the inner poll, but it's not like we're doing `#[inline(always)]` here.

21 months agoAuto merge of #102064 - cjgillot:revert, r=Mark-Simulacrum
bors [Sat, 24 Sep 2022 09:36:29 +0000 (09:36 +0000)]
Auto merge of #102064 - cjgillot:revert, r=Mark-Simulacrum

Revert perf-regression 101620

Reverts #101862 #101620

r? `@Mark-Simulacrum`

21 months agoAuto merge of #102223 - matthiaskrgr:rollup-wb1qdhk, r=matthiaskrgr
bors [Sat, 24 Sep 2022 06:55:32 +0000 (06:55 +0000)]
Auto merge of #102223 - matthiaskrgr:rollup-wb1qdhk, r=matthiaskrgr

Rollup of 11 pull requests

Successful merges:

 - #101780 (Add a platform support document for Android)
 - #102044 (Remove `RtlGenRandom` (take two))
 - #102081 (Adding ignore fuchsia tests for execvp (pre_exec))
 - #102082 (Adding ignore fuchsia non-applicable commands)
 - #102146 (rustdoc: CSS prevent sidebar width change jank)
 - #102152 (Calculate `ProjectionTy::trait_def_id` for return-position `impl Trait` in trait correctly)
 - #102175 (Also require other subtrees to always build successfully)
 - #102176 (Add `llvm-dis` to the set of tools in `ci-llvm`)
 - #102188 (Update doc after renaming `fn is_zero`)
 - #102199 (Improve rustdoc GUI tests)
 - #102218 (Document some missing command-line arguments)

Failed merges:

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

21 months agobootstrap/miri: switch to non-deprecated env var for setting the sysroot folder
Ralf Jung [Sat, 24 Sep 2022 06:53:40 +0000 (08:53 +0200)]
bootstrap/miri: switch to non-deprecated env var for setting the sysroot folder

21 months agoRollup merge of #102218 - ehuss:rustc-flags, r=JohnTitor
Matthias Krüger [Sat, 24 Sep 2022 05:38:58 +0000 (07:38 +0200)]
Rollup merge of #102218 - ehuss:rustc-flags, r=JohnTitor

Document some missing command-line arguments

The rustc command-line arguments docs should document all of the stable arguments for rustc. Two were missing, `--force-warn` which was somewhat documented in the lint-levels chapter, but should also include a mention in the arguments list.  `--diagnostic-width` was stabilized in #95635, but the docs weren't updated.

21 months agoRollup merge of #102199 - GuillaumeGomez:improve-rustdoc-gui-tests, r=notriddle
Matthias Krüger [Sat, 24 Sep 2022 05:38:58 +0000 (07:38 +0200)]
Rollup merge of #102199 - GuillaumeGomez:improve-rustdoc-gui-tests, r=notriddle

Improve rustdoc GUI tests

I finally finished the update so we can now store values in variables and use them. It improves things nicely.

r? ``@notriddle``

21 months agoRollup merge of #102188 - flba-eb:doc_missed_at_rename, r=jyn514
Matthias Krüger [Sat, 24 Sep 2022 05:38:57 +0000 (07:38 +0200)]
Rollup merge of #102188 - flba-eb:doc_missed_at_rename, r=jyn514

Update doc after renaming `fn is_zero`

`fn is_zero` has been renamed to `fn count_is_zero` in 1b1bf2463619e23eba1b36b6d7df276ce73563dd.
This patch updates the documentation accordingly.

21 months agoRollup merge of #102176 - ojeda:add-llvm-dis-to-ci-llvm, r=Mark-Simulacrum
Matthias Krüger [Sat, 24 Sep 2022 05:38:56 +0000 (07:38 +0200)]
Rollup merge of #102176 - ojeda:add-llvm-dis-to-ci-llvm, r=Mark-Simulacrum

Add `llvm-dis` to the set of tools in `ci-llvm`

The LLVM disassembler is needed for the test introduced in https://github.com/rust-lang/rust/pull/97550.

Signed-off-by: Miguel Ojeda <ojeda@kernel.org>
21 months agoRollup merge of #102175 - oli-obk:miri_subtree_cleanup, r=jyn514
Matthias Krüger [Sat, 24 Sep 2022 05:38:56 +0000 (07:38 +0200)]
Rollup merge of #102175 - oli-obk:miri_subtree_cleanup, r=jyn514

Also require other subtrees to always build successfully

r? ``@jyn514``

21 months agoRollup merge of #102152 - compiler-errors:issue-102140, r=fee1-dead
Matthias Krüger [Sat, 24 Sep 2022 05:38:56 +0000 (07:38 +0200)]
Rollup merge of #102152 - compiler-errors:issue-102140, r=fee1-dead

Calculate `ProjectionTy::trait_def_id` for return-position `impl Trait` in trait correctly

Fixes #102140

21 months agoRollup merge of #102146 - notriddle:notriddle/sidebar-jank, r=GuillaumeGomez
Matthias Krüger [Sat, 24 Sep 2022 05:38:55 +0000 (07:38 +0200)]
Rollup merge of #102146 - notriddle:notriddle/sidebar-jank, r=GuillaumeGomez

rustdoc: CSS prevent sidebar width change jank

This commit makes the `width` and `min-width` of the sidebar the same. They originally were when cad0fce2053d52b7ba04c458f4c124c8b5c6141e added the `min-width` rule, but 6a5f8b1aef1417d7dc85b5d0a229d2db1930eb7c changed the `width` without changing the `min-width`, causing it to sometimes oscilate between 200 and 250 pixels depending on the main content.

# Before

[Screencast from 09-22-2022 10:25:29 AM.webm](https://user-images.githubusercontent.com/1593513/191813469-ea00f30f-6f49-40fc-9a26-e1dfd5068d2b.webm)

# After

[Screencast from 09-22-2022 10:32:20 AM.webm](https://user-images.githubusercontent.com/1593513/191813642-ae0902da-5262-403a-bbdf-995334201acb.webm)

21 months agoRollup merge of #102082 - andrewpollack:uid-ignore, r=tmandry
Matthias Krüger [Sat, 24 Sep 2022 05:38:54 +0000 (07:38 +0200)]
Rollup merge of #102082 - andrewpollack:uid-ignore, r=tmandry

Adding ignore fuchsia non-applicable commands

Adding ignore fuchsia non-applicable commands

cc `@djkoloski`

r? `@tmandry`

21 months agoRollup merge of #102081 - andrewpollack:add-execvp-calls-ignore, r=tmandry
Matthias Krüger [Sat, 24 Sep 2022 05:38:54 +0000 (07:38 +0200)]
Rollup merge of #102081 - andrewpollack:add-execvp-calls-ignore, r=tmandry

Adding ignore fuchsia tests for execvp (pre_exec)

Adding ignore fuchsia tests for pre_exec, which calls execvp

cc. `@djkoloski`

r? `@tmandry`

21 months agoRollup merge of #102044 - ChrisDenton:BCrypt-system-rand, r=thomcc
Matthias Krüger [Sat, 24 Sep 2022 05:38:53 +0000 (07:38 +0200)]
Rollup merge of #102044 - ChrisDenton:BCrypt-system-rand, r=thomcc

Remove `RtlGenRandom` (take two)

First try to use the system preferred RNG but if that fails (e.g. due to a broken system configuration) then fallback to manually opening an algorithm handle.

21 months agoRollup merge of #101780 - chriswailes:android-platform, r=joshtriplett
Matthias Krüger [Sat, 24 Sep 2022 05:38:52 +0000 (07:38 +0200)]
Rollup merge of #101780 - chriswailes:android-platform, r=joshtriplett

Add a platform support document for Android

r? ``@joshtriplett``

21 months agoPut back one of the `use`s for intra-doc mentions
Scott McMurray [Fri, 23 Sep 2022 07:02:49 +0000 (00:02 -0700)]
Put back one of the `use`s for intra-doc mentions

21 months agoAuto merge of #100845 - timvermeulen:iter_compare, r=scottmcm
bors [Sat, 24 Sep 2022 04:04:46 +0000 (04:04 +0000)]
Auto merge of #100845 - timvermeulen:iter_compare, r=scottmcm

Use internal iteration in `Iterator` comparison methods

Updates the `Iterator` methods `cmp_by`, `partial_cmp_by`, and `eq_by` to use internal iteration on `self`. I've also extracted their shared logic into a private helper function `iter_compare`, which will either short-circuit once the comparison result is known or return the comparison of the lengths of the iterators.

This change also indirectly benefits calls to `cmp`, `partial_cmp`, `eq`, `lt`, `le`, `gt`, and `ge`.

Unsurprising benchmark results: iterators that benefit from internal iteration (like `Chain`) see a speedup, while other iterators are unaffected.
```
 name                           before ns/iter  after ns/iter  diff ns/iter   diff %  speedup
 iter::bench_chain_partial_cmp  208,301         54,978             -153,323  -73.61%   x 3.79
 iter::bench_partial_cmp        55,527          55,702                  175    0.32%   x 1.00
 iter::bench_lt                 55,502          55,322                 -180   -0.32%   x 1.00
```

21 months agoDocument some missing command-line arguments
Eric Huss [Sat, 24 Sep 2022 02:02:59 +0000 (19:02 -0700)]
Document some missing command-line arguments

21 months agoAuto merge of #102068 - cjgillot:erased-lifetime-print, r=eholk
bors [Sat, 24 Sep 2022 01:23:17 +0000 (01:23 +0000)]
Auto merge of #102068 - cjgillot:erased-lifetime-print, r=eholk

Always print '_, even for erased lifetimes.

Explicit lifetime arguments are now the recommended syntax in rust 2018 and rust 2021.  This PR applies this discipline to rustc itself.

21 months agoRespond to document review feedback
Chris Wailes [Fri, 23 Sep 2022 23:14:17 +0000 (16:14 -0700)]
Respond to document review feedback

21 months agoBless miri.
Camille GILLOT [Fri, 23 Sep 2022 22:10:28 +0000 (00:10 +0200)]
Bless miri.

21 months agodiagnostics: avoid syntactically invalid suggestion in if conditionals
Michael Howell [Fri, 23 Sep 2022 20:24:35 +0000 (13:24 -0700)]
diagnostics: avoid syntactically invalid suggestion in if conditionals

Fixes #101065

21 months agoConstify Residual behind const_try
onestacked [Fri, 23 Sep 2022 18:17:31 +0000 (20:17 +0200)]
Constify Residual behind const_try

21 months agoMake `ManuallyDrop` satisfy `~const Destruct`
Deadbeef [Fri, 23 Sep 2022 18:07:36 +0000 (18:07 +0000)]
Make `ManuallyDrop` satisfy `~const Destruct`

21 months agoRemove unused `ConstFn(Once)Closure` structs.
onestacked [Fri, 23 Sep 2022 17:55:51 +0000 (19:55 +0200)]
Remove unused `ConstFn(Once)Closure` structs.

21 months agorustdoc: remove no-op CSS rule `#source-sidebar { z-index: 1 }`
Michael Howell [Fri, 23 Sep 2022 17:48:24 +0000 (10:48 -0700)]
rustdoc: remove no-op CSS rule `#source-sidebar { z-index: 1 }`

This rule became redundant in 07e3f998b1ceb4b8d2a7992782e60f5e776aa114.
When `#source-sidebar` became nested below `.sidebar`, it went from being
`position: fixed` to `position: static`, and according to MDN's [z-index]
documentation, this means it has no effect.

[z-index]: https://developer.mozilla.org/en-US/docs/Web/CSS/z-index

21 months agorustdoc: remove no-op mobile CSS `#source-sidebar { z-index: 11 }`
Michael Howell [Fri, 23 Sep 2022 17:32:17 +0000 (10:32 -0700)]
rustdoc: remove no-op mobile CSS `#source-sidebar { z-index: 11 }`

This rule became redundant in 07e3f998b1ceb4b8d2a7992782e60f5e776aa114.
When `#source-sidebar` became nested below `.sidebar`, it went from being
`position: fixed` to `position: static`, and according to MDN's [z-index]
documentation, this means it has no effect.

[z-index]: https://developer.mozilla.org/en-US/docs/Web/CSS/z-index

21 months agoAuto merge of #102192 - matthiaskrgr:rollup-0ctjzco, r=matthiaskrgr
bors [Fri, 23 Sep 2022 16:44:06 +0000 (16:44 +0000)]
Auto merge of #102192 - matthiaskrgr:rollup-0ctjzco, r=matthiaskrgr

Rollup of 7 pull requests

Successful merges:

 - #102094 (Add missing documentation for `bool::from_str`)
 - #102115 (Add examples to `bool::then` and `bool::then_some`)
 - #102134 (Detect panic strategy using `rustc --print cfg`)
 - #102137 (Don't convert valtree to constvalue during normalization)
 - #102148 (add regression test for miri issue 2433)
 - #102158 (rustdoc: clean up CSS/DOM for deprecation warnings)
 - #102177 (Fix a typo in `std`'s root docs)

Failed merges:

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

21 months agoBless clippy.
Camille GILLOT [Thu, 22 Sep 2022 17:39:38 +0000 (19:39 +0200)]
Bless clippy.

21 months agoBless 32bit ui.
Camille GILLOT [Wed, 21 Sep 2022 18:14:18 +0000 (20:14 +0200)]
Bless 32bit ui.

21 months agoBless pretty tests.
Camille GILLOT [Wed, 21 Sep 2022 17:09:43 +0000 (19:09 +0200)]
Bless pretty tests.

21 months agoBless cgu test.
Camille GILLOT [Tue, 20 Sep 2022 21:19:43 +0000 (23:19 +0200)]
Bless cgu test.

21 months agoAlways print '_, even for erased lifetimes.
Camille GILLOT [Sun, 11 Sep 2022 12:37:55 +0000 (14:37 +0200)]
Always print '_, even for erased lifetimes.

21 months agoAdded some spacing in const closure
onestacked [Fri, 23 Sep 2022 16:20:57 +0000 (18:20 +0200)]
Added some spacing in const closure

21 months agorustdoc: fix GUI tests to deal with slightly changed width
Michael Howell [Thu, 22 Sep 2022 18:51:48 +0000 (11:51 -0700)]
rustdoc: fix GUI tests to deal with slightly changed width

21 months agoImprove GUI tests by using variables
Guillaume Gomez [Fri, 23 Sep 2022 16:12:37 +0000 (18:12 +0200)]
Improve GUI tests by using variables

21 months agoUpdate browser-ui-test version to 0.11.0
Guillaume Gomez [Fri, 23 Sep 2022 16:12:23 +0000 (18:12 +0200)]
Update browser-ui-test version to 0.11.0

21 months agorustdoc: add regression test for sidebar width jank
Michael Howell [Thu, 22 Sep 2022 17:42:15 +0000 (10:42 -0700)]
rustdoc: add regression test for sidebar width jank

21 months agorustdoc: CSS prevent sidebar width change jank
Michael Howell [Thu, 22 Sep 2022 17:25:54 +0000 (10:25 -0700)]
rustdoc: CSS prevent sidebar width change jank

This commit makes the `width` and `min-width` of the sidebar the same. They
originally were when cad0fce2053d52b7ba04c458f4c124c8b5c6141e added the
`min-width` rule, but 6a5f8b1aef1417d7dc85b5d0a229d2db1930eb7c changed the
width without changing the `min-width`, causing it to sometimes oscilate
between 200 and 250 pixels depending on the main content.

21 months agoRollup merge of #102177 - inquisitivecrystal:std-doc-typo, r=Dylan-DPC
Matthias Krüger [Fri, 23 Sep 2022 13:40:23 +0000 (15:40 +0200)]
Rollup merge of #102177 - inquisitivecrystal:std-doc-typo, r=Dylan-DPC

Fix a typo in `std`'s root docs

Remarkably, this typo has been present for *seven years.* I was so surprised that I reread the text five times and then asked people on the rust Zulip to double-check. :)

21 months agoRollup merge of #102158 - notriddle:notriddle/stab-p, r=GuillaumeGomez
Matthias Krüger [Fri, 23 Sep 2022 13:40:23 +0000 (15:40 +0200)]
Rollup merge of #102158 - notriddle:notriddle/stab-p, r=GuillaumeGomez

rustdoc: clean up CSS/DOM for deprecation warnings

Preview: https://notriddle.com/notriddle-rustdoc-test/stab-p/std/macro.try.html

21 months agoRollup merge of #102148 - RalfJung:miri-test, r=oli-obk
Matthias Krüger [Fri, 23 Sep 2022 13:40:22 +0000 (15:40 +0200)]
Rollup merge of #102148 - RalfJung:miri-test, r=oli-obk

add regression test for miri issue 2433

Adding this here because the test needs to be run with debug assertions enabled to be sure so I had to run it in the rustc workspace.

Cc https://github.com/rust-lang/miri/issues/2433
r? ``@oli-obk``

21 months agoRollup merge of #102137 - b-naber:lazy-const-val-conversion, r=lcnr
Matthias Krüger [Fri, 23 Sep 2022 13:40:22 +0000 (15:40 +0200)]
Rollup merge of #102137 - b-naber:lazy-const-val-conversion, r=lcnr

Don't convert valtree to constvalue during normalization

r? ``@lcnr``

21 months agoRollup merge of #102134 - flba-eb:master, r=bjorn3
Matthias Krüger [Fri, 23 Sep 2022 13:40:21 +0000 (15:40 +0200)]
Rollup merge of #102134 - flba-eb:master, r=bjorn3

Detect panic strategy using `rustc --print cfg`

Instead of relying on a command line parameter, detect if a target is able to unwind or not.
Ignore tests that require unwinding on targets that don't support it.

I did not find any place where the removed parameter has been used, but it feels a bit risky as
I'm new to this test framework.

r? bjorn3

21 months agoRollup merge of #102115 - Alfriadox:master, r=thomcc
Matthias Krüger [Fri, 23 Sep 2022 13:40:20 +0000 (15:40 +0200)]
Rollup merge of #102115 - Alfriadox:master, r=thomcc

Add examples to `bool::then` and `bool::then_some`

Added examples to `bool::then` and `bool::then_some` to show the distinction between the eager evaluation of `bool::then_some` and the lazy evaluation of `bool::then`.

21 months agoRollup merge of #102094 - GuillaumeGomez:bool-from-str-missing-docs, r=scottmcm
Matthias Krüger [Fri, 23 Sep 2022 13:40:20 +0000 (15:40 +0200)]
Rollup merge of #102094 - GuillaumeGomez:bool-from-str-missing-docs, r=scottmcm

Add missing documentation for `bool::from_str`

Fixes #101870.

21 months agoFixed Doc-Tests
onestacked [Fri, 23 Sep 2022 13:39:13 +0000 (15:39 +0200)]
Fixed Doc-Tests

21 months agoAuto merge of #102056 - b-naber:unevaluated, r=lcnr
bors [Fri, 23 Sep 2022 13:39:11 +0000 (13:39 +0000)]
Auto merge of #102056 - b-naber:unevaluated, r=lcnr

Introduce mir::Unevaluated

Previously the distinction between unevaluated constants in the type-system and in mir was not explicit and a little confusing. Probably better to introduce its own type for that.

r? `@lcnr`

21 months agorename Unevaluated to UnevaluatedConst
b-naber [Thu, 22 Sep 2022 10:34:23 +0000 (12:34 +0200)]
rename Unevaluated to UnevaluatedConst

21 months agofix test
b-naber [Fri, 23 Sep 2022 12:25:30 +0000 (14:25 +0200)]
fix test

21 months agoUpdate doc after renaming fn is_zero
Florian Bartels [Fri, 23 Sep 2022 12:16:35 +0000 (14:16 +0200)]
Update doc after renaming fn is_zero

`fn is_zero` has been renamed to `fn count_is_zero` in
1b1bf2463619e23eba1b36b6d7df276ce73563dd.
This patch updates the documentation accordingly.

21 months agoConstifed Try trait
onestacked [Fri, 23 Sep 2022 11:43:34 +0000 (13:43 +0200)]
Constifed Try trait

21 months agoAdded const_closure
onestacked [Fri, 23 Sep 2022 11:42:31 +0000 (13:42 +0200)]
Added const_closure

21 months agoAuto merge of #102165 - matthiaskrgr:rollup-n5oquhe, r=matthiaskrgr
bors [Fri, 23 Sep 2022 09:33:23 +0000 (09:33 +0000)]
Auto merge of #102165 - matthiaskrgr:rollup-n5oquhe, r=matthiaskrgr

Rollup of 8 pull requests

Successful merges:

 - #100734 (Split out async_fn_in_trait into a separate feature)
 - #101664 (Note if mismatched types have a similar name)
 - #101815 (Migrated the rustc_passes annotation without effect diagnostic infrastructure)
 - #102042 (Distribute rust-docs-json via rustup.)
 - #102066 (rustdoc: remove unnecessary `max-width` on headers)
 - #102095 (Deduplicate two functions that would soon have been three)
 - #102104 (Set 'exec-env:RUST_BACKTRACE=0' in const-eval-select tests)
 - #102112 (Allow full relro on powerpc64-unknown-linux-gnu)

Failed merges:

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

21 months agoFix a typo in `std`'s root docs
inquisitivecrystal [Fri, 23 Sep 2022 08:40:57 +0000 (01:40 -0700)]
Fix a typo in `std`'s root docs

21 months agoAdd `llvm-dis` to the set of tools in `ci-llvm`
Miguel Ojeda [Thu, 22 Sep 2022 13:03:38 +0000 (15:03 +0200)]
Add `llvm-dis` to the set of tools in `ci-llvm`

The LLVM disassembler is needed for the test introduced in
https://github.com/rust-lang/rust/pull/97550.

Signed-off-by: Miguel Ojeda <ojeda@kernel.org>
21 months agoRepair stderr test result to added line
Florian Bartels [Fri, 23 Sep 2022 08:10:07 +0000 (10:10 +0200)]
Repair stderr test result to added line

21 months agoAlso require other subtrees to always build successfully
Oli Scherer [Fri, 23 Sep 2022 08:03:10 +0000 (08:03 +0000)]
Also require other subtrees to always build successfully

21 months agoignore test cases when checking emscripten
Florian Bartels [Fri, 23 Sep 2022 07:41:12 +0000 (09:41 +0200)]
ignore test cases when checking emscripten

21 months agoAuto merge of #102150 - matthiaskrgr:rollup-6xmd8f3, r=matthiaskrgr
bors [Fri, 23 Sep 2022 06:52:39 +0000 (06:52 +0000)]
Auto merge of #102150 - matthiaskrgr:rollup-6xmd8f3, r=matthiaskrgr

Rollup of 10 pull requests

Successful merges:

 - #102113 (OpTy: fix a method taking self rather than &self)
 - #102118 (rustdoc: clean up line numbers on code examples)
 - #102123 (Add note to clippy::non_expressive_names doc)
 - #102125 (rustdoc: remove no-op CSS `.content .item-info { position: relative }`)
 - #102127 (Use appropriate variable names)
 - #102128 (Const unification is already infallible, remove the error handling logic)
 - #102133 (Use valtrees for comparison)
 - #102135 (Improve some AllTypes fields name)
 - #102144 (Extend const_convert with const {FormResidual, Try} for ControlFlow.)
 - #102147 (rustdoc: remove no-op CSS `.location:empty { border: none }`)

Failed merges:

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

21 months agoAdapt test results
Florian Bartels [Thu, 22 Sep 2022 13:18:17 +0000 (15:18 +0200)]
Adapt test results

21 months agoRestore ignore tag
Florian Bartels [Thu, 22 Sep 2022 12:25:10 +0000 (14:25 +0200)]
Restore ignore tag

This test case actually requires std::process.

21 months agoDetect panic strategy using `rustc --print cfg`
Florian Bartels [Thu, 22 Sep 2022 10:40:37 +0000 (12:40 +0200)]
Detect panic strategy using `rustc --print cfg`

Instead of relying on a command line parameter, detect if a target
is able to unwind or not.
Ignore tests that require unwinding on targets that don't support it.

21 months agorustfmt
Scott McMurray [Fri, 23 Sep 2022 06:13:12 +0000 (23:13 -0700)]
rustfmt

21 months agoMake ZST checks in core/alloc more readable
Scott McMurray [Fri, 23 Sep 2022 06:12:29 +0000 (23:12 -0700)]
Make ZST checks in core/alloc more readable

There's a bunch of these checks because of special handing for ZSTs in various unsafe implementations of stuff.

This lets them be `T::IS_ZST` instead of `mem::size_of::<T>() == 0` every time, making them both more readable and more terse.

*Not* proposed for stabilization at this time.  Would be `pub(crate)` except `alloc` wants to use it too.

(And while it doesn't matter now, if we ever get something like 85836 making it a const can help codegen be simpler.)

21 months agoAdd `#[inline]` to trivial functions on `core::sync::Exclusive`
Thom Chiovoloni [Fri, 23 Sep 2022 05:15:27 +0000 (22:15 -0700)]
Add `#[inline]` to trivial functions on `core::sync::Exclusive`

21 months agoAuto merge of #100488 - khyperia:invalid-calling-convention-help-message, r=nagisa...
bors [Fri, 23 Sep 2022 04:22:14 +0000 (04:22 +0000)]
Auto merge of #100488 - khyperia:invalid-calling-convention-help-message, r=nagisa,jyn514

Improve the help message for an invalid calling convention

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

I mostly followed the suggestions of `@nagisa` in that issue, ~~however, I wasn't sure how to check stability for the suggestion of "Do not suggest CCs that cannot be used due to them being unstable and feature not being enabled", so I did not implement that point.~~

I haven't contributed to rustc much, please feel free to point out suggestions! For example, the `.map(|s| Symbol::intern(s)).collect::<Vec<_>>()` seems pretty gross performance-wise, but maybe that's OK in error reporting code.

21 months agoRollup merge of #102112 - cuviper:powerpc64-full-relro, r=eholk
Matthias Krüger [Fri, 23 Sep 2022 02:29:20 +0000 (04:29 +0200)]
Rollup merge of #102112 - cuviper:powerpc64-full-relro, r=eholk

Allow full relro on powerpc64-unknown-linux-gnu

This was previously limited to partial relro, citing issues on RHEL6,
but that's no longer a supported platform since #95026. We have long
been enabling full relro in RHEL7's own Rust builds for ppc64, without
trouble, so it should be fine to drop this workaround.

21 months agoRollup merge of #102104 - Aaron1011:no-test-backtrace, r=Mark-Simulacrum
Matthias Krüger [Fri, 23 Sep 2022 02:29:19 +0000 (04:29 +0200)]
Rollup merge of #102104 - Aaron1011:no-test-backtrace, r=Mark-Simulacrum

Set 'exec-env:RUST_BACKTRACE=0' in const-eval-select tests

This allows the tests to pass even if the user has RUST_BACKTRACE set when running 'x.py'

21 months agoRollup merge of #102095 - oli-obk:simplify, r=TaKO8Ki
Matthias Krüger [Fri, 23 Sep 2022 02:29:19 +0000 (04:29 +0200)]
Rollup merge of #102095 - oli-obk:simplify, r=TaKO8Ki

Deduplicate two functions that would soon have been three

https://github.com/rust-lang/rust/pull/101900 would have added another copy of this for effects

21 months agoRollup merge of #102066 - notriddle:notriddle/headers-max-width, r=GuillaumeGomez
Matthias Krüger [Fri, 23 Sep 2022 02:29:18 +0000 (04:29 +0200)]
Rollup merge of #102066 - notriddle:notriddle/headers-max-width, r=GuillaumeGomez

rustdoc: remove unnecessary `max-width` on headers

This code was added in 003b2bc1c65251ec2fc80b78ed91c43fb35402ec to prevent these headers from overlapping `.out-of-band` side items. That stopped being a problem when 3f92ff34b5a2fe8dd1a32aa27d437519e63782f0 switched rustdoc over to using `float`, rather than `position: absolute`, to implement this.

21 months agoRollup merge of #102042 - LukeMathWalker:add-rust-json-docs-to-rustup, r=Mark-Simulacrum
Matthias Krüger [Fri, 23 Sep 2022 02:29:17 +0000 (04:29 +0200)]
Rollup merge of #102042 - LukeMathWalker:add-rust-json-docs-to-rustup, r=Mark-Simulacrum

Distribute rust-docs-json via rustup.

I am not 100% sure on how to treat `rust-json-docs` in `target_host_combination`. I went along with a similar strategy to the one used for `rust-docs`, but looking for guidance there.

21 months agoRollup merge of #101815 - diegooliveira:master, r=davidtwco
Matthias Krüger [Fri, 23 Sep 2022 02:29:16 +0000 (04:29 +0200)]
Rollup merge of #101815 - diegooliveira:master, r=davidtwco

Migrated the rustc_passes annotation without effect diagnostic infrastructure

Small change to move the validation for annotations to the new diagnostic infrastructure.

21 months agoRollup merge of #101664 - mejrs:similarity, r=fee1-dead
Matthias Krüger [Fri, 23 Sep 2022 02:29:16 +0000 (04:29 +0200)]
Rollup merge of #101664 - mejrs:similarity, r=fee1-dead

Note if mismatched types have a similar name

If users get a type error between similarly named types, it will point out that these are actually different types, and where they were defined.

21 months agoRollup merge of #100734 - ComputerDruid:afit_feature, r=compiler-errors
Matthias Krüger [Fri, 23 Sep 2022 02:29:15 +0000 (04:29 +0200)]
Rollup merge of #100734 - ComputerDruid:afit_feature, r=compiler-errors

Split out async_fn_in_trait into a separate feature

PR #101224 added support for async fn in trait desuraging behind the `return_position_impl_trait_in_trait` feature.

Split this out so that it's behind its own feature gate, since async fn in trait doesn't need to follow the same stabilization schedule.

21 months agoAuto merge of #101708 - compiler-errors:issue-101696, r=jackh726
bors [Fri, 23 Sep 2022 01:21:25 +0000 (01:21 +0000)]
Auto merge of #101708 - compiler-errors:issue-101696, r=jackh726

Normalize closure signature after construction

Astconv can't normalize inputs or outputs with escaping bound vars ([see this](https://doc.rust-lang.org/nightly/nightly-rustc/src/rustc_typeck/check/fn_ctxt/mod.rs.html#294)), so normalize them after we've wrapped them in a binder.

Fixes #101696

21 months agorustdoc: fix unit tests
Michael Howell [Thu, 22 Sep 2022 22:41:32 +0000 (15:41 -0700)]
rustdoc: fix unit tests

21 months agorustdoc: clean up CSS/DOM for deprecation warnings
Michael Howell [Thu, 22 Sep 2022 21:54:38 +0000 (14:54 -0700)]
rustdoc: clean up CSS/DOM for deprecation warnings

21 months agoImprove the help message for an invalid calling convention
khyperia [Thu, 8 Sep 2022 13:37:15 +0000 (15:37 +0200)]
Improve the help message for an invalid calling convention

21 months agoCalculate ProjectionTy::trait_def_id correctly
Michael Goulet [Thu, 22 Sep 2022 19:36:26 +0000 (19:36 +0000)]
Calculate ProjectionTy::trait_def_id correctly

21 months agoRollup merge of #102147 - notriddle:notriddle/location-border-none, r=GuillaumeGomez
Matthias Krüger [Thu, 22 Sep 2022 19:34:56 +0000 (21:34 +0200)]
Rollup merge of #102147 - notriddle:notriddle/location-border-none, r=GuillaumeGomez

rustdoc: remove no-op CSS `.location:empty { border: none }`

This rule was added in 2bb2a2975f25e8ba7a372898e7e112f1cec5db01 to remove a border placed around the location when it's empty. That rule was removed in 6a5f8b1aef1417d7dc85b5d0a229d2db1930eb7c, so this rule does nothing.

21 months agoRollup merge of #102144 - chriss0612:const_convert_control_flow, r=scottmcm
Matthias Krüger [Thu, 22 Sep 2022 19:34:55 +0000 (21:34 +0200)]
Rollup merge of #102144 - chriss0612:const_convert_control_flow, r=scottmcm

Extend const_convert with const {FormResidual, Try} for ControlFlow.

Very small change so I just used the existing `const_convert` feature flag.  #88674
Newly const API:
```
impl<B, C> const ops::Try for ControlFlow<B, C>;
impl<B, C> const ops::FromResidual for ControlFlow<B, C>;
```

`@usbalbin` I hope it is ok that I added to your feature.

21 months agoRollup merge of #102135 - GuillaumeGomez:rename-alltypes-fields, r=notriddle
Matthias Krüger [Thu, 22 Sep 2022 19:34:55 +0000 (21:34 +0200)]
Rollup merge of #102135 - GuillaumeGomez:rename-alltypes-fields, r=notriddle

Improve some AllTypes fields name

r? `@notriddle`

21 months agoRollup merge of #102133 - b-naber:use-valtrees-in-fast-reject, r=lcnr
Matthias Krüger [Thu, 22 Sep 2022 19:34:54 +0000 (21:34 +0200)]
Rollup merge of #102133 - b-naber:use-valtrees-in-fast-reject, r=lcnr

Use valtrees for comparison

r? `@lcnr`