]> git.lizzy.rs Git - rust.git/log
rust.git
4 years agoAddress code reviews
Yuki Okushi [Sat, 4 Jul 2020 18:40:59 +0000 (03:40 +0900)]
Address code reviews

4 years agoExplain exhaustive matching on {usize,isize} maximum values
Yuki Okushi [Wed, 1 Jul 2020 17:37:52 +0000 (02:37 +0900)]
Explain exhaustive matching on {usize,isize} maximum values

4 years agoAuto merge of #72978 - matklad:ship-rust-analyzer, r=Mark-Simulacrum
bors [Sat, 4 Jul 2020 04:54:27 +0000 (04:54 +0000)]
Auto merge of #72978 - matklad:ship-rust-analyzer, r=Mark-Simulacrum

ship rust analyzer

This successfully  builds rust-analyzer as a part of rust repo. I haven't yet added required changes to dist.rs -- seems like I just have to copy-paste quite a bit of code I don't really understand :-)

4 years agoAuto merge of #74019 - Manishearth:rollup-2st3jsk, r=Manishearth
bors [Sat, 4 Jul 2020 01:09:09 +0000 (01:09 +0000)]
Auto merge of #74019 - Manishearth:rollup-2st3jsk, r=Manishearth

Rollup of 12 pull requests

Successful merges:

 - #73140 (Fallback to xml.etree.ElementTree)
 - #73670 (Add `format_args_capture` feature)
 - #73693 (Use exhaustive match in const_prop.rs)
 - #73845 (Use &raw in A|Rc::as_ptr)
 - #73861 (Create E0768)
 - #73881 (Standardize bibliographic citations in rustc API docs)
 - #73925 (Improve comments from #72617, as suggested by RalfJung)
 - #73949 ([mir-opt] Fix mis-optimization and other issues with the SimplifyArmIdentity pass)
 - #73984 (Edit docs for rustc_data_structures::graph::scc)
 - #73985 (Fix "getting started" link)
 - #73997 (fix typo)
 - #73999 (Bump mingw-check CI image from Ubuntu 16.04 to 18.04.)

Failed merges:

 - #74000 (add `lazy_normalization_consts` feature gate)

r? @ghost

4 years agoRollup merge of #73999 - eddyb:svv-prereq, r=Mark-Simulacrum
Manish Goregaokar [Sat, 4 Jul 2020 00:17:10 +0000 (17:17 -0700)]
Rollup merge of #73999 - eddyb:svv-prereq, r=Mark-Simulacrum

Bump mingw-check CI image from Ubuntu 16.04 to 18.04.

I chose 18.04 because we use it for other builders, and it's enough to get a version of MinGW that can build `libssh2-sys`.

This is a prereq for #73902, where `libssh2-sys` shows up as an indirect dependency of `x.py check src/tools/semverver` (through `src/tools/cargo`, which we don't currently `x.py check` because it's not in-tree). See also https://github.com/rust-lang/rust/pull/73902#issuecomment-652414502.

r? @Mark-Simulacrum cc @mati865

4 years agoRollup merge of #73997 - rust-lang:lcnr-patch-1, r=jonas-schievink
Manish Goregaokar [Sat, 4 Jul 2020 00:17:09 +0000 (17:17 -0700)]
Rollup merge of #73997 - rust-lang:lcnr-patch-1, r=jonas-schievink

fix typo

r? @Dylan-DPC

4 years agoRollup merge of #73985 - e00E:fix-getting-started-link, r=jonas-schievink
Manish Goregaokar [Sat, 4 Jul 2020 00:17:07 +0000 (17:17 -0700)]
Rollup merge of #73985 - e00E:fix-getting-started-link, r=jonas-schievink

Fix "getting started" link

The previous link is 404.

4 years agoRollup merge of #73984 - pierwill:pierwill-tarjan, r=jonas-schievink
Manish Goregaokar [Sat, 4 Jul 2020 00:17:05 +0000 (17:17 -0700)]
Rollup merge of #73984 - pierwill:pierwill-tarjan, r=jonas-schievink

Edit docs for rustc_data_structures::graph::scc

- Add newline to provide concise module summary
- Add wikipedia link
- Italicize O notation

4 years agoRollup merge of #73949 - wesleywiser:simplify_try_fixes, r=oli-obk
Manish Goregaokar [Sat, 4 Jul 2020 00:17:03 +0000 (17:17 -0700)]
Rollup merge of #73949 - wesleywiser:simplify_try_fixes, r=oli-obk

[mir-opt] Fix mis-optimization and other issues with the SimplifyArmIdentity pass

This does not yet attempt re-enabling the pass, but it does resolve a number of issues with the pass.

r? @oli-obk

I believe this closes #73223.

4 years agoRollup merge of #73925 - eduardosm:improve-pr72617-comments, r=RalfJung
Manish Goregaokar [Sat, 4 Jul 2020 00:17:01 +0000 (17:17 -0700)]
Rollup merge of #73925 - eduardosm:improve-pr72617-comments, r=RalfJung

Improve comments from #72617, as suggested by RalfJung

r? @RalfJung

4 years agoRollup merge of #73881 - pierwill:pierwill-citations, r=jonas-schievink
Manish Goregaokar [Sat, 4 Jul 2020 00:16:59 +0000 (17:16 -0700)]
Rollup merge of #73881 - pierwill:pierwill-citations, r=jonas-schievink

Standardize bibliographic citations in rustc API docs

See #73877.

4 years agoRollup merge of #73861 - GuillaumeGomez:create-e0767, r=Dylan-DPC
Manish Goregaokar [Sat, 4 Jul 2020 00:16:58 +0000 (17:16 -0700)]
Rollup merge of #73861 - GuillaumeGomez:create-e0767, r=Dylan-DPC

Create E0768

r? @Dylan-DPC

4 years agoRollup merge of #73845 - CAD97:weak-as-unsized-ptr, r=RalfJung
Manish Goregaokar [Sat, 4 Jul 2020 00:16:56 +0000 (17:16 -0700)]
Rollup merge of #73845 - CAD97:weak-as-unsized-ptr, r=RalfJung

Use &raw in A|Rc::as_ptr

This PR uses `&raw` for offsetting `*mut [A]RcInner<T> -> *mut T`.

Additionally, this updates the implementation of `Weak::as_ptr` to support unsized `T`, though it does not yet relax the bounds of `Weak::as_ptr`/`into_raw`/`from_raw` to accept unsized `T`.

4 years agoRollup merge of #73693 - wesleywiser:const_prop_exhaustive_match, r=oli-obk
Manish Goregaokar [Sat, 4 Jul 2020 00:16:54 +0000 (17:16 -0700)]
Rollup merge of #73693 - wesleywiser:const_prop_exhaustive_match, r=oli-obk

Use exhaustive match in const_prop.rs

Addresses a comment left by @RalfJung on #73613

r? @RalfJung

4 years agoRollup merge of #73670 - davidhewitt:format-args-capture, r=varkor
Manish Goregaokar [Sat, 4 Jul 2020 00:16:52 +0000 (17:16 -0700)]
Rollup merge of #73670 - davidhewitt:format-args-capture, r=varkor

Add `format_args_capture` feature

This is the initial implementation PR for [RFC 2795](https://github.com/rust-lang/rfcs/pull/2795).

Note that, as dicussed in the tracking issue (#67984), the feature gate has been called `format_args_capture`.

Next up I guess I need to add documentation for this feature. I've not written any docs before for rustc / std so I would appreciate suggestions on where I should add docs.

4 years agoRollup merge of #73140 - tmiasko:element-tree, r=GuillaumeGomez
Manish Goregaokar [Sat, 4 Jul 2020 00:16:50 +0000 (17:16 -0700)]
Rollup merge of #73140 - tmiasko:element-tree, r=GuillaumeGomez

Fallback to xml.etree.ElementTree

The xml.etree.cElementTree has been deprecated since Python 3.3
and removed in Python 3.9 https://bugs.python.org/issue36543.

4 years agoUpdate UI tests
Guillaume Gomez [Fri, 3 Jul 2020 22:15:08 +0000 (00:15 +0200)]
Update UI tests

4 years agoCreate new E0768 error code for "no valid digits found for number" error
Guillaume Gomez [Fri, 3 Jul 2020 22:12:16 +0000 (00:12 +0200)]
Create new E0768 error code for "no valid digits found for number" error

4 years agoAuto merge of #73650 - pietroalbini:ci-aarch64-gnu, r=Mark-Simulacrum
bors [Fri, 3 Jul 2020 21:16:31 +0000 (21:16 +0000)]
Auto merge of #73650 - pietroalbini:ci-aarch64-gnu, r=Mark-Simulacrum

Add Docker image to run AArch64 Linux tests

This PR adds a Docker image to run the AArch64 Linux test suite on a native AArch64 host platform, which will be used in the future to run the test suite in our CI. The image will also be useful for ARM folks to ensure internally that the bugfixes they submit work.

This will be the first Docker image designed to run on a non-x86_64 host platform, and to prevent surprising behavior this PR moves all images requiring a x86_64 host in the `src/ci/docker/host-x86_64` directory. Paths and scripts are changed accordingly, and a helpful error message is added when someone tries to run an image on the wrong architecture:

```
Invalid image: aarch64-gnu
Note: the image exists for the aarch64 host architecture
Note: the current host architecture is x86_64
```

The old emulated and disabled `aarch64-gnu` builder is also removed in this PR.

This PR is best reviewed commit-by-commit.
r? @Mark-Simulacrum

4 years agoEdit docs for rustc_data_structures::graph::scc
pierwill [Tue, 30 Jun 2020 22:16:18 +0000 (15:16 -0700)]
Edit docs for rustc_data_structures::graph::scc

- Add newline to provide concise module summary
- Add wikipedia link
- Italicize O notation

4 years agoIgnore test with panic on wasm targets
David Hewitt [Fri, 3 Jul 2020 17:17:53 +0000 (18:17 +0100)]
Ignore test with panic on wasm targets

4 years agoBump mingw-check CI image from Ubuntu 16.04 to 18.04.
Eduard-Mihai Burtescu [Fri, 3 Jul 2020 15:27:46 +0000 (18:27 +0300)]
Bump mingw-check CI image from Ubuntu 16.04 to 18.04.

4 years agofix typo
Bastian Kauschke [Fri, 3 Jul 2020 15:21:20 +0000 (17:21 +0200)]
fix typo

4 years agoAdd rust-analyzer submodule
Aleksey Kladov [Thu, 4 Jun 2020 11:11:15 +0000 (13:11 +0200)]
Add rust-analyzer submodule

The current plan is that submodule tracks the `release` branch of
rust-analyzer, which is updated once a week.

rust-analyzer is a workspace (with a virtual manifest), the actual
binary is provide by `crates/rust-analyzer` package.

Note that we intentionally don't add rust-analyzer to `Kind::Test`,
for two reasons.

*First*, at the moment rust-analyzer's test suite does a couple of
things which might not work in the context of rust repository. For
example, it shells out directly to `rustup` and `rustfmt`. So, making
this work requires non-trivial efforts.

*Second*, it seems unlikely that running tests in rust-lang/rust repo
would provide any additional guarantees. rust-analyzer builds with
stable and does not depend on the specifics of the compiler, so
changes to compiler can't break ra, unless they break stability
guarantee. Additionally, rust-analyzer itself is gated on bors, so we
are pretty confident that test suite passes.

4 years agoFix "getting started" link
Valentin [Fri, 3 Jul 2020 09:42:12 +0000 (11:42 +0200)]
Fix "getting started" link

The previous link is 404.

4 years agoci: remove the emulated aarch64-gnu image
Pietro Albini [Tue, 23 Jun 2020 10:46:12 +0000 (12:46 +0200)]
ci: remove the emulated aarch64-gnu image

4 years agoci: add native aarch64-gnu docker builder
Pietro Albini [Tue, 23 Jun 2020 10:33:22 +0000 (12:33 +0200)]
ci: add native aarch64-gnu docker builder

4 years agoci: include the architecture in the docker cache key
Pietro Albini [Fri, 5 Jun 2020 10:36:09 +0000 (12:36 +0200)]
ci: include the architecture in the docker cache key

We're starting to include native aarch64 machines in our CI, but before
this commit the architecture wasn't included in the cache key for our
Docker images. This means there could be conflicts between images
produced on different architectures, hurting our CI times.

This commit fixes the problem by including the output of `uname -m` in
the cache key.

4 years agoci: provide feedback when running an image on the wrong host arch
Pietro Albini [Tue, 23 Jun 2020 10:08:16 +0000 (12:08 +0200)]
ci: provide feedback when running an image on the wrong host arch

4 years agoci: move all x86_64 runners to the host-x86_64 directory
Pietro Albini [Tue, 23 Jun 2020 09:50:48 +0000 (11:50 +0200)]
ci: move all x86_64 runners to the host-x86_64 directory

We need to add runners designed for an aarch64 host system, and it'd be
nice to return an error message if someone tries to run an image
designed for an host architecture in another one.

To start the work on this, this commit moves all the existing builders
in the host-x86_64 directory, and changes the run.sh script to look up
the image in the correct directory based on the host architecture.

4 years agoAuto merge of #73897 - ehuss:update-cargo, r=ehuss
bors [Fri, 3 Jul 2020 07:09:45 +0000 (07:09 +0000)]
Auto merge of #73897 - ehuss:update-cargo, r=ehuss

Update cargo, rls

## cargo
14 commits in c26576f9adddd254b3dd63aecba176434290a9f6..fede83ccf973457de319ba6fa0e36ead454d2e20
2020-06-23 16:21:21 +0000 to 2020-07-02 21:51:34 +0000
- Fix overflow error on 32-bit. (rust-lang/cargo#8446)
- Exclude the target directory from backups using CACHEDIR.TAG (rust-lang/cargo#8378)
- CONTRIBUTING.md: Link to Zulip rather than Discord (rust-lang/cargo#8436)
- Update built-in help for features (rust-lang/cargo#8433)
- Update core-foundation requirement from 0.7.0 to 0.9.0 (rust-lang/cargo#8432)
- Parse `# env-dep` directives in dep-info files (rust-lang/cargo#8421)
- Move string interning to util (rust-lang/cargo#8419)
- Expose built cdylib artifacts in the Compilation structure (rust-lang/cargo#8418)
- Remove unused serde_derive dependency from the crates.io crate (rust-lang/cargo#8416)
- Remove unused remove_dir_all dependency (rust-lang/cargo#8412)
- Improve git error messages a bit (rust-lang/cargo#8409)
- Improve the description of Config.home_path (rust-lang/cargo#8408)
- Improve support for non-`master` main branches (rust-lang/cargo#8364)
- Document that OUT_DIR in JSON messages is an absolute path (rust-lang/cargo#8403)

## rls
2020-06-19 15:36:00 +0200 to 2020-06-30 23:34:52 +0200
- Update cargo (rust-lang-nursery/rls#1686)

4 years agoAuto merge of #73882 - nnethercote:avoid-unwrap_or_else-in-allocate_in, r=Amanieu
bors [Fri, 3 Jul 2020 03:18:28 +0000 (03:18 +0000)]
Auto merge of #73882 - nnethercote:avoid-unwrap_or_else-in-allocate_in, r=Amanieu

Avoid `unwrap_or_else` in `RawVec::allocate_in`.

This reduces the amount of LLVM IR generated by up to 1 or 2%.

r? @Amanieu

4 years agoFix missing return in `optimization_applies()`
Wesley Wiser [Sun, 21 Jun 2020 23:35:16 +0000 (19:35 -0400)]
Fix missing return in `optimization_applies()`

4 years agoFix debuginfo so that it points to the correct local
Wesley Wiser [Sun, 21 Jun 2020 23:34:54 +0000 (19:34 -0400)]
Fix debuginfo so that it points to the correct local

4 years ago[mir-opt] Prevent mis-optimization when SimplifyArmIdentity runs
Wesley Wiser [Mon, 22 Jun 2020 00:55:06 +0000 (20:55 -0400)]
[mir-opt] Prevent mis-optimization when SimplifyArmIdentity runs

If temporaries are used beyond just the temporary chain, then we can't
optimize out the reads and writes.

4 years agoAdd test for simplify-try misoptimization
Wesley Wiser [Mon, 22 Jun 2020 00:54:53 +0000 (20:54 -0400)]
Add test for simplify-try misoptimization

4 years agoStandardize bibliographic citations in rustc API docs
pierwill [Tue, 30 Jun 2020 00:12:20 +0000 (17:12 -0700)]
Standardize bibliographic citations in rustc API docs

4 years agoUpdate cargo
Eric Huss [Thu, 2 Jul 2020 23:37:28 +0000 (16:37 -0700)]
Update cargo

4 years agoAuto merge of #73977 - Manishearth:rollup-2x4s7c6, r=Manishearth
bors [Thu, 2 Jul 2020 23:18:15 +0000 (23:18 +0000)]
Auto merge of #73977 - Manishearth:rollup-2x4s7c6, r=Manishearth

Rollup of 8 pull requests

Successful merges:

 - #73454 (Move contributing.md to rustc-dev-guide and point at getting started)
 - #73724 (Use WASM's saturating casts if they are available)
 - #73726 (resolve: disallow labelled breaks/continues through closures/async blocks)
 - #73753 (Use 'tcx for references to AccessLevels wherever possible.)
 - #73781 (Update psm version)
 - #73952 (Add option for local docker testing.)
 - #73957 (disable BTree min_max test in Miri for now)
 - #73975 (Document rustc_ast::ast::Pat)

Failed merges:

r? @ghost

4 years agoUpdate rls
Eric Huss [Tue, 30 Jun 2020 21:52:16 +0000 (14:52 -0700)]
Update rls

4 years agoUpdate cargo
Eric Huss [Tue, 30 Jun 2020 17:39:05 +0000 (10:39 -0700)]
Update cargo

4 years agoRollup merge of #73975 - pierwill:patch-3, r=jonas-schievink
Manish Goregaokar [Thu, 2 Jul 2020 22:56:03 +0000 (15:56 -0700)]
Rollup merge of #73975 - pierwill:patch-3, r=jonas-schievink

Document rustc_ast::ast::Pat

4 years agoRollup merge of #73957 - RalfJung:btree-min-max, r=shepmaster
Manish Goregaokar [Thu, 2 Jul 2020 22:56:01 +0000 (15:56 -0700)]
Rollup merge of #73957 - RalfJung:btree-min-max, r=shepmaster

disable BTree min_max test in Miri for now

Until https://github.com/rust-lang/rust/issues/73915 is fixed, better skip this test in Miri so that we can test the others at least.

4 years agoRollup merge of #73952 - ehuss:docker-dev, r=Mark-Simulacrum
Manish Goregaokar [Thu, 2 Jul 2020 22:55:59 +0000 (15:55 -0700)]
Rollup merge of #73952 - ehuss:docker-dev, r=Mark-Simulacrum

Add option for local docker testing.

This adds the option `--dev` to `src/ci/docker/run.sh` so that it will enter an interactive environment for local testing. I have often needed this for testing things, but I always needed to edit this script. I wanted the ability to interact in the environment, run different commands, inspect errors, etc.

4 years agoRollup merge of #73781 - nagisa:psm-up, r=Mark-Simulacrum
Manish Goregaokar [Thu, 2 Jul 2020 22:55:57 +0000 (15:55 -0700)]
Rollup merge of #73781 - nagisa:psm-up, r=Mark-Simulacrum

Update psm version

This new version includes a fix for building on aarch64 windows.

cc #72881

4 years agoRollup merge of #73753 - eddyb:extraneous-lifetime, r=Manishearth
Manish Goregaokar [Thu, 2 Jul 2020 22:55:55 +0000 (15:55 -0700)]
Rollup merge of #73753 - eddyb:extraneous-lifetime, r=Manishearth

Use 'tcx for references to AccessLevels wherever possible.

Most of the changes are just fallout from removing a lifetime parameter from structs, and mostly in clippy.

r? @Manishearth

4 years agoRollup merge of #73726 - davidtwco:issue-73541-labelled-break-through-closure-async...
Manish Goregaokar [Thu, 2 Jul 2020 22:55:53 +0000 (15:55 -0700)]
Rollup merge of #73726 - davidtwco:issue-73541-labelled-break-through-closure-async, r=petrochenkov

resolve: disallow labelled breaks/continues through closures/async blocks

Fixes #73541.

This PR modifies name resolution to prohibit labelled breaks/continues through closures or async blocks, fixing an ICE. In addition, it improves the diagnostics surrounding labelled breaks/continues through closures or async blocks by informing the user if the label exists in an parent scope and telling them that won't work.

r? @petrochenkov (resolve)
cc @estebank (diagnostic changes) @tmandry (issue is from `wg-async-foundations`)

4 years agoRollup merge of #73724 - CryZe:wasm-saturating-casts, r=alexcrichton
Manish Goregaokar [Thu, 2 Jul 2020 22:55:52 +0000 (15:55 -0700)]
Rollup merge of #73724 - CryZe:wasm-saturating-casts, r=alexcrichton

Use WASM's saturating casts if they are available

WebAssembly supports saturating floating point to integer casts behind a target feature. The feature is already available on many browsers. Beginning with 1.45 Rust will start defining the behavior of floating point to integer casts to be saturating as well. For this Rust constructs additional checks on top of the `fptoui` / `fptosi` instructions it emits. Here we introduce the possibility for the codegen backend to construct saturating casts itself and only fall back to constructing the checks ourselves if that is not possible.

Resolves part of #73591

4 years agoRollup merge of #73454 - mark-i-m:contributing, r=nikomatsakis
Manish Goregaokar [Thu, 2 Jul 2020 22:55:50 +0000 (15:55 -0700)]
Rollup merge of #73454 - mark-i-m:contributing, r=nikomatsakis

Move contributing.md to rustc-dev-guide and point at getting started

See description on https://github.com/rust-lang/rustc-dev-guide/pull/753

4 years agoDocument rustc_ast::ast::Pat
pierwill [Thu, 2 Jul 2020 22:11:03 +0000 (15:11 -0700)]
Document rustc_ast::ast::Pat

4 years agoNote Weak.ptr never dangles sooner
CAD97 [Thu, 2 Jul 2020 20:53:56 +0000 (16:53 -0400)]
Note Weak.ptr never dangles sooner

4 years agoUse 'tcx for references to AccessLevels wherever possible.
Eduard-Mihai Burtescu [Thu, 25 Jun 2020 20:41:36 +0000 (23:41 +0300)]
Use 'tcx for references to AccessLevels wherever possible.

4 years agoAuto merge of #73751 - eddyb:no-empty-tables, r=nikomatsakis
bors [Thu, 2 Jul 2020 16:33:00 +0000 (16:33 +0000)]
Auto merge of #73751 - eddyb:no-empty-tables, r=nikomatsakis

Remove `TypeckTables::empty(None)` and make hir_owner non-optional.

Each commit before the last one removes uses of `TypeckTables::empty(None)`, replacing the empty tables with having `Option` around the `&'tcx TypeckTables<'tcx>` that HIR visitors kept track of.

The last commit removes the concept of "empty `TypeckTables`" altogether, guaranteeing that every `TypeckTables` corresponds to a HIR body owner.

r? @nikomatsakis

4 years agoRemove `TypeckTables::empty(None)` and make hir_owner non-optional.
Eduard-Mihai Burtescu [Fri, 26 Jun 2020 03:34:43 +0000 (06:34 +0300)]
Remove `TypeckTables::empty(None)` and make hir_owner non-optional.

4 years agorustc_lint: avoid using TypeckTables::empty for LateContext.
Eduard-Mihai Burtescu [Fri, 26 Jun 2020 02:55:23 +0000 (05:55 +0300)]
rustc_lint: avoid using TypeckTables::empty for LateContext.

4 years agorustc_save_analysis: avoid using TypeckTables::empty for SaveContext.
Eduard-Mihai Burtescu [Thu, 25 Jun 2020 19:53:34 +0000 (22:53 +0300)]
rustc_save_analysis: avoid using TypeckTables::empty for SaveContext.

4 years agorustc_privacy: avoid using TypeckTables::empty for {Name,Type}PrivacyVisitor.
Eduard-Mihai Burtescu [Thu, 25 Jun 2020 19:23:41 +0000 (22:23 +0300)]
rustc_privacy: avoid using TypeckTables::empty for {Name,Type}PrivacyVisitor.

4 years agorustc_passes/dead: avoid using TypeckTables::empty for MarkSymbolVisitor.
Eduard-Mihai Burtescu [Thu, 25 Jun 2020 17:58:33 +0000 (20:58 +0300)]
rustc_passes/dead: avoid using TypeckTables::empty for MarkSymbolVisitor.

4 years agorustc_passes/reachable: avoid using TypeckTables::empty for ReachableContext.
Eduard-Mihai Burtescu [Thu, 25 Jun 2020 17:25:46 +0000 (20:25 +0300)]
rustc_passes/reachable: avoid using TypeckTables::empty for ReachableContext.

4 years agorustc_driver/pretty: avoid using TypeckTables::empty for TypedAnnotation.
Eduard-Mihai Burtescu [Thu, 25 Jun 2020 17:17:45 +0000 (20:17 +0300)]
rustc_driver/pretty: avoid using TypeckTables::empty for TypedAnnotation.

4 years agoresolve: disallow label use through closure/async
David Wood [Thu, 25 Jun 2020 14:16:38 +0000 (15:16 +0100)]
resolve: disallow label use through closure/async

This commit modifies resolve to disallow `break`/`continue` to labels
through closures or async blocks. This doesn't make sense and should
have been prohibited anyway.

Signed-off-by: David Wood <david@davidtw.co>
4 years agoAuto merge of #73954 - Manishearth:rollup-8qvh170, r=Manishearth
bors [Thu, 2 Jul 2020 12:35:08 +0000 (12:35 +0000)]
Auto merge of #73954 - Manishearth:rollup-8qvh170, r=Manishearth

Rollup of 10 pull requests

Successful merges:

 - #73414 (Implement `slice_strip` feature)
 - #73564 (linker: Create GNU_EH_FRAME header by default when producing ELFs)
 - #73622 (Deny unsafe ops in unsafe fns in libcore)
 - #73684 (add spans to injected coverage counters, extract with CoverageData query)
 - #73812 (ast_pretty: Pass some token streams and trees by reference)
 - #73853 (Add newline to rustc MultiSpan docs)
 - #73883 (Compile rustdoc less often.)
 - #73885 (Fix wasm32 being broken due to a NodeJS version bump)
 - #73903 (Changes required for rustc/cargo to build for iOS targets)
 - #73938 (Optimise fast path of checked_ops with `unlikely`)

Failed merges:

r? @ghost

4 years agoFurther improve comments in libstd/panicking.rs.
Eduardo Sánchez Muñoz [Thu, 2 Jul 2020 11:47:19 +0000 (13:47 +0200)]
Further improve comments in libstd/panicking.rs.

4 years agoAuto merge of #73950 - Manishearth:rollup-0dtxnit, r=Manishearth
bors [Thu, 2 Jul 2020 08:35:53 +0000 (08:35 +0000)]
Auto merge of #73950 - Manishearth:rollup-0dtxnit, r=Manishearth

Rollup of 16 pull requests

Successful merges:

 - #72569 (Remove legacy InnoSetup GUI installer)
 - #73306 (Don't implement Fn* traits for #[target_feature] functions)
 - #73345 (expand: Stop using nonterminals for passing tokens to attribute and derive macros)
 - #73449 (Provide more information on duplicate lang item error.)
 - #73569 (Handle `macro_rules!` tokens consistently across crates)
 - #73803 (Recover extra trailing angle brackets in struct definition)
 - #73839 (Split and expand nonstandard-style lints unicode unit test.)
 - #73841 (Remove defunct `-Z print-region-graph`)
 - #73848 (Fix markdown rendering in librustc_lexer docs)
 - #73865 (Fix Zulip topic format)
 - #73892 (Clean up E0712 explanation)
 - #73898 (remove duplicate test for #61935)
 - #73906 (Add missing backtick in `ty_error_with_message`)
 - #73909 (`#[deny(unsafe_op_in_unsafe_fn)]` in libstd/fs.rs)
 - #73910 (Rewrite a few manual index loops with while-let)
 - #73929 (Fix comment typo)

Failed merges:

r? @ghost

4 years agodisable BTree min_max test in Miri for now
Ralf Jung [Thu, 2 Jul 2020 08:25:04 +0000 (10:25 +0200)]
disable BTree min_max test in Miri for now

4 years agoAddress review comments and add UI test
Christopher Serr [Tue, 30 Jun 2020 19:44:44 +0000 (21:44 +0200)]
Address review comments and add UI test

4 years agoAdd comments and format the code
Christopher Serr [Sat, 27 Jun 2020 12:03:32 +0000 (14:03 +0200)]
Add comments and format the code

4 years agoAdd codegen tests
Christopher Serr [Sat, 27 Jun 2020 11:26:30 +0000 (13:26 +0200)]
Add codegen tests

4 years agoCheck for feature with pre-interned symbol
Christopher Serr [Fri, 26 Jun 2020 15:53:52 +0000 (17:53 +0200)]
Check for feature with pre-interned symbol

4 years agoUse WASM's saturating casts if they are available
Christopher Serr [Thu, 25 Jun 2020 15:05:12 +0000 (17:05 +0200)]
Use WASM's saturating casts if they are available

WebAssembly supports saturating floating point to integer casts behind a
target feature. The feature is already available on many browsers.
Beginning with 1.45 Rust will start defining the behavior of floating
point to integer casts to be saturating as well. For this Rust
constructs additional checks on top of the `fptoui` / `fptosi`
instructions it emits. Here we introduce the possibility for the codegen
backend to construct saturating casts itself and only fall back to
constructing the checks ourselves if that is not possible.

4 years agoRollup merge of #73938 - nbdd0121:checked_opt, r=nagisa
Manish Goregaokar [Thu, 2 Jul 2020 07:16:41 +0000 (00:16 -0700)]
Rollup merge of #73938 - nbdd0121:checked_opt, r=nagisa

Optimise fast path of checked_ops with `unlikely`

This PR marks paths returning `None` in checked_ops as unlikely to improvde codegen.

Fixes #73731

4 years agoRollup merge of #73903 - luxxxxy:ios-rustc, r=nikomatsakis
Manish Goregaokar [Thu, 2 Jul 2020 07:16:40 +0000 (00:16 -0700)]
Rollup merge of #73903 - luxxxxy:ios-rustc, r=nikomatsakis

Changes required for rustc/cargo to build for iOS targets

cargo, rustc, clippy, rust-src, and rust-analysis successfully build for `aarch64-apple-ios` with these changes.

NOTE: cargo required arm64-ios openssl/libcurl to be linked.

![image](https://user-images.githubusercontent.com/65794972/86178510-75d78080-baf6-11ea-9c17-b74bd6c85272.png)
![image](https://user-images.githubusercontent.com/65794972/86178525-7bcd6180-baf6-11ea-9974-f99980cbdb24.png)

4 years agoRollup merge of #73885 - pietroalbini:ci-fix-wasm32, r=kennytm
Manish Goregaokar [Thu, 2 Jul 2020 07:16:38 +0000 (00:16 -0700)]
Rollup merge of #73885 - pietroalbini:ci-fix-wasm32, r=kennytm

Fix wasm32 being broken due to a NodeJS version bump

Emscripten's SDK [recently bumped the version of NodeJS they shipped](https://github.com/emscripten-core/emsdk/pull/529), but our Dockerfile for the wasm32 builder hardcoded the version number. This will cause consistent CI failures once the currently cached image is rebuilt (either due to a change or due to the cache expiring).

This PR fixes the problem by finding the latest version of NodeJS in the Emscripten SDK and symlinking it to a "latest" directory, which is then added to the `PATH`.

4 years agoRollup merge of #73883 - ehuss:rustdoc-stage-previous, r=Mark-Simulacrum
Manish Goregaokar [Thu, 2 Jul 2020 07:16:36 +0000 (00:16 -0700)]
Rollup merge of #73883 - ehuss:rustdoc-stage-previous, r=Mark-Simulacrum

Compile rustdoc less often.

Previously rustdoc was built 3 times with `x.py test`:

1. stage2 (using stage1 compiler) for compiletest tests (stage1-tools copied to stage2).
2. stage1 (using stage0 compiler) for std crate tests (stage0-tools copied to stage1).
3. stage2 test (using stage2 compiler) for rustdoc crate tests and error_index_generator (stage2-tools).

This PR removes the majority of number 3, where it will instead use the stage1 compiler, which will share the artifacts from number 1.

This matches the behavior of the libstd crate tests. I don't think it is entirely necessary to run the tests using stage2.

At `-j2`, the last build step goes from about 300s to 70s on my machine. It's not a huge win, but shaving 4 minutes isn't bad.

The other two builds would be pretty difficult (or undesired or impossible) to unify. It looks like std tests use stage1 very intentionally (see `force_use_stage1` and its history), and compiletests use the top stage very intentionally.

Unfortunately the linkchecker builds all docs at stage2 (stage2-tools), which means a few build script artifacts are not shared. It's not really clear to me how to fix that (because it uses `default_doc`, there doesn't seem to be any control over the stages).

---

For `x.py doc`, rustdoc was previously built three times (with compiler-docs):

1. stage2 (using stage1 compiler) for normal documentation output (stage1-tools copied to stage2).
2. stage1 (using stage0 compiler) for compiler-docs
3. stage2 (using stage2 compiler) for error_index_generator (stage2-tools)

This PR combines these so that they consistently use the "top stage" rustdoc. I don't know why the compiler-docs was written to use stage minus one, but it seems better to be consistent across the doc steps.

---

I've tried to test this with a variety of commands (`x.py doc`, `x.py test`, different `--stage` flags, `full-bootstrap`, setting `--target`, etc.) to try to make sure there aren't significant regressions here. It's tricky since there are so many variables, and this stuff is difficult for me to fully understand.

Closes #70799 (I think)

4 years agoRollup merge of #73853 - pierwill:pierwill-multispan-doc, r=jonas-schievink
Manish Goregaokar [Thu, 2 Jul 2020 07:16:34 +0000 (00:16 -0700)]
Rollup merge of #73853 - pierwill:pierwill-multispan-doc, r=jonas-schievink

Add newline to rustc MultiSpan docs

Also adds back-ticks when referring to the contents of this collection.

4 years agoRollup merge of #73812 - petrochenkov:prettyref, r=varkor
Manish Goregaokar [Thu, 2 Jul 2020 07:16:32 +0000 (00:16 -0700)]
Rollup merge of #73812 - petrochenkov:prettyref, r=varkor

ast_pretty: Pass some token streams and trees by reference

Salvaged from an intermediate version of https://github.com/rust-lang/rust/pull/73345.

4 years agoRollup merge of #73684 - richkadel:llvm-coverage-map-gen-2, r=wesleywiser
Manish Goregaokar [Thu, 2 Jul 2020 07:16:30 +0000 (00:16 -0700)]
Rollup merge of #73684 - richkadel:llvm-coverage-map-gen-2, r=wesleywiser

add spans to injected coverage counters, extract with CoverageData query

This is the next iteration on the Rust Coverage implementation, and follows PR #73488

@tmandry @wesleywiser

I came up with an approach for coverage spans, pushing them through the Call terminator as additional args so they can be extracted by the CoverageData query.

I'm using an IndexVec to store them in CoverageData such that there can be only one per index (even if parts of the MIR get duplicated during optimization).

If this approach works for you, I can quickly expand on this to build a separate IndexVec for counter expressions, using a separate call that will be ignored during code generation, but from which I can extract the counter expression values.

Let me know your thoughts. Thanks!

r? @tmandry

Rust compiler MCP rust-lang/compiler-team#278
Relevant issue: #34701 - Implement support for LLVMs code coverage instrumentation

4 years agoRollup merge of #73622 - LeSeulArtichaut:unsafe-libcore, r=nikomatsakis
Manish Goregaokar [Thu, 2 Jul 2020 07:16:28 +0000 (00:16 -0700)]
Rollup merge of #73622 - LeSeulArtichaut:unsafe-libcore, r=nikomatsakis

Deny unsafe ops in unsafe fns in libcore

After `liballoc`, It's time for `libcore` :D

I planned to do this bit by bit to avoid having a big chunk of diffs, so to make reviews easier, and to make the unsafe blocks narrower and take the time to document them properly.

r? @nikomatsakis cc @RalfJung

4 years agoRollup merge of #73564 - petrochenkov:ehdr, r=Amanieu
Manish Goregaokar [Thu, 2 Jul 2020 07:16:26 +0000 (00:16 -0700)]
Rollup merge of #73564 - petrochenkov:ehdr, r=Amanieu

linker: Create GNU_EH_FRAME header by default when producing ELFs

Do it in a centralized way in `link.rs` instead of individual target specs.

The opt-out is `-Clink-arg=(-Wl,)--no-eh-frame-hdr` if necessary.

Fixes https://github.com/rust-lang/rust/issues/73451
cc https://github.com/rust-lang/rust/pull/73483

4 years agoRollup merge of #73414 - lzutao:slice_strip, r=dtolnay
Manish Goregaokar [Thu, 2 Jul 2020 07:16:24 +0000 (00:16 -0700)]
Rollup merge of #73414 - lzutao:slice_strip, r=dtolnay

Implement `slice_strip` feature

Tracking issue: #73413

4 years agoAdd option for local docker testing.
Eric Huss [Thu, 2 Jul 2020 04:03:14 +0000 (21:03 -0700)]
Add option for local docker testing.

4 years agoRollup merge of #73929 - kraai:fix-comment-typo, r=jonas-schievink
Manish Goregaokar [Thu, 2 Jul 2020 03:36:10 +0000 (20:36 -0700)]
Rollup merge of #73929 - kraai:fix-comment-typo, r=jonas-schievink

Fix comment typo

4 years agoRollup merge of #73910 - cuviper:while-indexing, r=oli-obk
Manish Goregaokar [Thu, 2 Jul 2020 03:36:08 +0000 (20:36 -0700)]
Rollup merge of #73910 - cuviper:while-indexing, r=oli-obk

Rewrite a few manual index loops with while-let

There were a few instances of this pattern:

```rust
while index < vec.len() {
    let item = &vec[index];
    // ...
}
```

These can be indexed at once:

```rust
while let Some(item) = vec.get(index) {
    // ...
}
```

Particularly in `ObligationForest::process_obligations`, this mitigates
a codegen regression found with LLVM 11 (#73526).

4 years agoRollup merge of #73909 - eltonlaw:unsafe-libstd-fs-rs, r=sfackler
Manish Goregaokar [Thu, 2 Jul 2020 03:36:06 +0000 (20:36 -0700)]
Rollup merge of #73909 - eltonlaw:unsafe-libstd-fs-rs, r=sfackler

`#[deny(unsafe_op_in_unsafe_fn)]` in libstd/fs.rs

The `libstd/fs.rs` part of https://github.com/rust-lang/rust/issues/73904 . Wraps the two calls to an unsafe fn `Initializer::nop()` in an `unsafe` block.

Followed instructions in parent issue, ran `./x.py check src/libstd/` after adding the lint and two warnings were given. After adding these changes, those disappear.

4 years agoRollup merge of #73906 - JohnTitor:missing-bt, r=jonas-schievink
Manish Goregaokar [Thu, 2 Jul 2020 03:36:04 +0000 (20:36 -0700)]
Rollup merge of #73906 - JohnTitor:missing-bt, r=jonas-schievink

Add missing backtick in `ty_error_with_message`

4 years agoRollup merge of #73898 - lcnr:issue61383, r=jonas-schievink
Manish Goregaokar [Thu, 2 Jul 2020 03:36:02 +0000 (20:36 -0700)]
Rollup merge of #73898 - lcnr:issue61383, r=jonas-schievink

remove duplicate test for #61935

Apparently I somehow messed up the issue number in #67890
which caused us to add this test twice, both as https://github.com/rust-lang/rust/blob/master/src/test/ui/const-generics/issues/issue-61935.rs and https://github.com/rust-lang/rust/blob/master/src/test/ui/const-generics/lazy-normalization/issue-71922.rs

#61935 is the actually fixed issue while #71922 is still not working, as it depends on lazy norm of repeat expressions

4 years agoRollup merge of #73892 - GuillaumeGomez:cleanup-e0712, r=Dylan-DPC
Manish Goregaokar [Thu, 2 Jul 2020 03:36:00 +0000 (20:36 -0700)]
Rollup merge of #73892 - GuillaumeGomez:cleanup-e0712, r=Dylan-DPC

Clean up E0712 explanation

r? @Dylan-DPC

4 years agoRollup merge of #73865 - LeSeulArtichaut:patch-1, r=Dylan-DPC
Manish Goregaokar [Thu, 2 Jul 2020 03:35:58 +0000 (20:35 -0700)]
Rollup merge of #73865 - LeSeulArtichaut:patch-1, r=Dylan-DPC

Fix Zulip topic format

Yet another instance of me making a mistake after copy-pasting :D
r? @Dylan-DPC

4 years agoRollup merge of #73848 - pierwill:pierwill-lexer-block-doc, r=jonas-schievink
Manish Goregaokar [Thu, 2 Jul 2020 03:35:56 +0000 (20:35 -0700)]
Rollup merge of #73848 - pierwill:pierwill-lexer-block-doc, r=jonas-schievink

Fix markdown rendering in librustc_lexer docs

Use back-ticks instead of quotation marks in docs for the block comment variant of TokenKind.

## [Before](https://doc.rust-lang.org/nightly/nightly-rustc/rustc_lexer/enum.TokenKind.html#variant.BlockComment) and after

<img width="1103" alt="Screen Shot 2020-06-28 at 1 22 30 PM" src="https://user-images.githubusercontent.com/19642016/85957562-446a8380-b943-11ea-913a-442cf7744083.png">

<img width="1015" alt="Screen Shot 2020-06-28 at 1 28 29 PM" src="https://user-images.githubusercontent.com/19642016/85957566-4af8fb00-b943-11ea-8fef-a09c1d586772.png">

## Question

For visual consistency, should we use back-ticks throughout the docs for these enum variants?

4 years agoRollup merge of #73841 - tmiasko:print-region-graph, r=Mark-Simulacrum
Manish Goregaokar [Thu, 2 Jul 2020 03:35:54 +0000 (20:35 -0700)]
Rollup merge of #73841 - tmiasko:print-region-graph, r=Mark-Simulacrum

Remove defunct `-Z print-region-graph`

4 years agoRollup merge of #73839 - crlf0710:snapshot_the_reality, r=Manishearth
Manish Goregaokar [Thu, 2 Jul 2020 03:35:52 +0000 (20:35 -0700)]
Rollup merge of #73839 - crlf0710:snapshot_the_reality, r=Manishearth

Split and expand nonstandard-style lints unicode unit test.

RFC 2457 requested that the `nonstandard_style` series of linted be adjusted to cover the non_ascii_identifier case. However when i read the code of those implementations, it seems they're already supporting non_ascii_identifiers. But the exact rules is a little different than what's proposed in RFC 2457.

So I splitted and expanded the existing test case to try to exercise every branch in the code. I think it'll also be easier to examine the cases in these unit tests to see whether it's ok to just leave them as is, or some adjustments are needed.

r? @Manishearth

4 years agoRollup merge of #73803 - Aaron1011:feature/angle-field-recovery, r=matthewjasper
Manish Goregaokar [Thu, 2 Jul 2020 03:35:50 +0000 (20:35 -0700)]
Rollup merge of #73803 - Aaron1011:feature/angle-field-recovery, r=matthewjasper

Recover extra trailing angle brackets in struct definition

This commit applies the existing 'extra angle bracket recovery' logic
when parsing fields in struct definitions. This allows us to continue
parsing the struct's fields, avoiding spurious 'missing field' errors in
code that tries to use the struct.

4 years agoRollup merge of #73569 - Aaron1011:fix/macro-rules-group, r=petrochenkov
Manish Goregaokar [Thu, 2 Jul 2020 03:35:48 +0000 (20:35 -0700)]
Rollup merge of #73569 - Aaron1011:fix/macro-rules-group, r=petrochenkov

Handle `macro_rules!` tokens consistently across crates

When we serialize a `macro_rules!` macro, we used a 'lowered' `TokenStream` for its body, which has all `Nonterminal`s expanded in-place via `nt_to_tokenstream`. This matters when an 'outer' `macro_rules!` macro expands to an 'inner' `macro_rules!` macro - the inner macro may use tokens captured from the 'outer' macro in its definition.

This means that invoking a foreign `macro_rules!` macro may use a different body `TokenStream` than when the same `macro_rules!` macro is invoked in the same crate. This difference is observable by proc-macros invoked by a `macro_rules!` macro - a `None`-delimited group will be seen in the same-crate case (inserted when convering `Nonterminal`s to the `proc_macro` crate's structs), but no `None`-delimited group in the cross-crate case.

To fix this inconsistency, we now insert `None`-delimited groups when 'lowering' a `Nonterminal` `macro_rules!` body, just as we do in `proc_macro_server`. Additionally, we no longer print extra spaces for `None`-delimited groups - as far as pretty-printing is concerned, they don't exist (only their contents do). This ensures that `Display` output of a `TokenStream` does not depend on which crate a `macro_rules!` macro was invoked from.

This PR is necessary in order to patch the `solana-genesis-programs` for the upcoming hygiene serialization breakage (https://github.com/rust-lang/rust/pull/72121#issuecomment-646924847). The `solana-genesis-programs` crate will need to use a proc macro to re-span certain tokens in a nested `macro_rules!`, which requires us to consistently use a `None`-delimited group.

See `src/test/ui/proc-macro/nested-macro-rules.rs` for an example of the kind of nested `macro_rules!` affected by this crate.

4 years agoRollup merge of #73449 - ehuss:duplicate-lang-item, r=matthewjasper
Manish Goregaokar [Thu, 2 Jul 2020 03:35:46 +0000 (20:35 -0700)]
Rollup merge of #73449 - ehuss:duplicate-lang-item, r=matthewjasper

Provide more information on duplicate lang item error.

This gives some notes on the location of the files where the lang items were loaded from. Some duplicate lang item errors can be a little confusing, and this might help in diagnosing what has happened.

Here's an example when hitting a bug with Cargo's build-std:

```
error: duplicate lang item in crate `core` (which `rustc_std_workspace_core` depends on): `try`.
  |
  = note: the lang item is first defined in crate `core` (which `z10` depends on)
  = note: first definition in `core` loaded from /Users/eric/Proj/rust/cargo/scratch/z10/target/target/debug/deps/libcore-a764da499c7385f4.rmeta
  = note: second definition in `core` loaded from /Users/eric/Proj/rust/cargo/scratch/z10/target/target/debug/deps/libcore-5b082675aea34986.rmeta
```

4 years agoRollup merge of #73345 - petrochenkov:nointerp, r=Aaron1011
Manish Goregaokar [Thu, 2 Jul 2020 03:35:44 +0000 (20:35 -0700)]
Rollup merge of #73345 - petrochenkov:nointerp, r=Aaron1011

expand: Stop using nonterminals for passing tokens to attribute and derive macros

Make one more step towards fully token-based expansion and fix issues described in https://github.com/rust-lang/rust/issues/72545#issuecomment-640276791.

Now `struct S;` is passed to `foo!(struct S;)` and `#[foo] struct S;` in the same way - as a token stream `struct S ;`, rather than a single non-terminal token `NtItem` which is then broken into parts later.

The cost is making pretty-printing of token streams less pretty.
Some of the pretty-printing regressions will be recovered by keeping jointness with each token, which we will need to do anyway.

Unfortunately, this is not exactly the same thing as https://github.com/rust-lang/rust/pull/73102.
One more observable effect is how `$crate` is printed in the attribute input.
Inside `NtItem` was printed as `crate` or `that_crate`, now as a part of a token stream it's printed as `$crate` (there are good reasons for these differences, see https://github.com/rust-lang/rust/pull/62393 and related PRs).
This may break old proc macros (custom derives) written before the main portion of the proc macro API (macros 1.2) was stabilized, those macros did `input.to_string()` and reparsed the result, now that result can contain `$crate` which cannot be reparsed.

So, I think we should do this regardless, but we need to run crater first.
r? @Aaron1011

4 years agoRollup merge of #73306 - calebzulawski:target-feature-11-fn-trait-soundness, r=nikoma...
Manish Goregaokar [Thu, 2 Jul 2020 03:35:43 +0000 (20:35 -0700)]
Rollup merge of #73306 - calebzulawski:target-feature-11-fn-trait-soundness, r=nikomatsakis

Don't implement Fn* traits for #[target_feature] functions

Closes #72012.

4 years agoRollup merge of #72569 - ChrisDenton:remove-innosetup, r=nikomatsakis
Manish Goregaokar [Thu, 2 Jul 2020 03:35:41 +0000 (20:35 -0700)]
Rollup merge of #72569 - ChrisDenton:remove-innosetup, r=nikomatsakis

Remove legacy InnoSetup GUI installer

On Windows the InnoSetup `.exe` installer was superseded by the MSI installer long ago. It's no longer needed.

The `.exe` installer hasn't been linked from the [other installation methods](https://forge.rust-lang.org/infra/other-installation-methods.html#standalone) page in many years. As far as I can tell the intent was always to remove this installer once the MSI proved itself. Though admittedly both installers feel very "legacy" at this point.

Removing this would mean we only maintain one Windows GUI installer and would speed up the distribution phase.

As a result of removing InnoSetup, this closes #24397

4 years agoTests for number of times rustdoc is built with x.py test and doc.
Eric Huss [Wed, 1 Jul 2020 22:51:35 +0000 (15:51 -0700)]
Tests for number of times rustdoc is built with x.py test and doc.

4 years agoAuto merge of #72053 - Mark-Simulacrum:32bitcheck, r=pietroalbini
bors [Wed, 1 Jul 2020 21:01:36 +0000 (21:01 +0000)]
Auto merge of #72053 - Mark-Simulacrum:32bitcheck, r=pietroalbini

Test UI tests for pass=check

I'm going to just compare the builder times since I wasn't able to get this working nicely locally (hit some obscure linker error).

Fixes part of #69823

4 years agoReclarify safety comments in Weak::as_ptr
CAD97 [Wed, 1 Jul 2020 20:01:34 +0000 (16:01 -0400)]
Reclarify safety comments in Weak::as_ptr