]> git.lizzy.rs Git - rust.git/log
rust.git
4 years agoRollup merge of #72770 - crlf0710:mixed_script_confusable, r=Manishearth
Manish Goregaokar [Fri, 26 Jun 2020 01:00:05 +0000 (18:00 -0700)]
Rollup merge of #72770 - crlf0710:mixed_script_confusable, r=Manishearth

Implement mixed script confusable lint.

This implements the mixed script confusable lint defined in RFC 2457.
This is blocked on #72069 and https://github.com/unicode-rs/unicode-security/pull/13, and will need a Cargo.toml version bump after those are resolved.

The lint message warning is sub-optimal for now. We'll need a mechanism to properly output  `AugmentScriptSet` to screen, this is to be added in `unicode-security` crate.

r? @Manishearth

4 years agoRollup merge of #72738 - mati865:self-contained-option, r=petrochenkov
Manish Goregaokar [Fri, 26 Jun 2020 01:00:03 +0000 (18:00 -0700)]
Rollup merge of #72738 - mati865:self-contained-option, r=petrochenkov

Self contained linking option

With objects moved to self-contained directory by https://github.com/rust-lang/rust/pull/72999 we can now add option to control whether to use self-contained on native linkage mode.

4 years agoRollup merge of #72617 - eduardosm:panicking, r=Amanieu
Manish Goregaokar [Fri, 26 Jun 2020 01:00:02 +0000 (18:00 -0700)]
Rollup merge of #72617 - eduardosm:panicking, r=Amanieu

Add a fast path for `std::thread::panicking`.

This is done by adding a global atomic variable (non-TLS) that counts how many threads are panicking. In order to check if the current thread is panicking, this variable is read and, if it is zero, no thread (including the one where `panicking` is being called) is panicking and `panicking` can return `false` immediately without needing to access TLS. If the global counter is not zero, the local counter is accessed from TLS to check if the current thread is panicking.

4 years agoImplement mixed script confusable lint.
Charles Lew [Tue, 23 Jun 2020 11:45:13 +0000 (19:45 +0800)]
Implement mixed script confusable lint.

4 years agoAuto merge of #72717 - poliorcetics:try-from-int-to-nzint, r=dtolnay
bors [Thu, 25 Jun 2020 17:37:02 +0000 (17:37 +0000)]
Auto merge of #72717 - poliorcetics:try-from-int-to-nzint, r=dtolnay

Add TryFrom<{int}> for NonZero{int}

Adds `TryFrom<{int}> for NonZero{int}`.

It uses the existing `NonZero{int}::new()` and `Option::ok_or()` functions, meaning the checks are not repeated.

I also added tests, I tried to follow the convention I saw in the test file.

I also used `#[stable(feature = "nzint_try_from_int_conv", since = "1.46.0")]`, but I have no idea if the feature/version are correctly named or even correct.

4 years agoAuto merge of #73711 - Dylan-DPC:rollup-kzx15of, r=Dylan-DPC
bors [Thu, 25 Jun 2020 12:43:50 +0000 (12:43 +0000)]
Auto merge of #73711 - Dylan-DPC:rollup-kzx15of, r=Dylan-DPC

Rollup of 6 pull requests

Successful merges:

 - #72700 (`improper_ctypes_definitions` lint)
 - #73516 (Allow dynamic linking for iOS/tvOS targets)
 - #73616 (Liballoc minor hash import tweak)
 - #73634 (Add UI test for issue 73592)
 - #73688 (Document the self keyword)
 - #73698 (Add procedure for prioritization notifications on Zulip)

Failed merges:

r? @ghost

4 years agoRename remaining `fallback` to `self_contained`
Mateusz Mikuła [Thu, 25 Jun 2020 09:15:09 +0000 (11:15 +0200)]
Rename remaining `fallback` to `self_contained`

4 years agoRename get_self_contained_lib_path
Mateusz Mikuła [Mon, 22 Jun 2020 17:56:56 +0000 (19:56 +0200)]
Rename get_self_contained_lib_path

4 years agoAdd unstable rustc option to control self-contained linkage mode
Mateusz Mikuła [Thu, 28 May 2020 17:54:08 +0000 (19:54 +0200)]
Add unstable rustc option to control self-contained linkage mode

4 years agoAuto merge of #72559 - Aaron1011:feature/assoc-lang-items, r=oli-obk
bors [Thu, 25 Jun 2020 08:58:37 +0000 (08:58 +0000)]
Auto merge of #72559 - Aaron1011:feature/assoc-lang-items, r=oli-obk

Implement associated lang items

Fixes #70718

This commit allows making associated items (e.g. associated functions
and types) into lang items via the `#[lang]` attribute. This allows such
items to be accessed directly, rather than by iterating over the parent
item's associated items.

I've added `FnOnce::Output` as a lang item, and updated one old usage to
use the new lang item. The remaining uses can be updated separately.

4 years agoRollup merge of #73698 - spastorino:patch-1, r=wesleywiser
Dylan DPC [Thu, 25 Jun 2020 00:03:42 +0000 (02:03 +0200)]
Rollup merge of #73698 - spastorino:patch-1, r=wesleywiser

Add procedure for prioritization notifications on Zulip

This PR was originally opened by @LeSeulArtichaut as #73695, closing that one in favor of this one. Made some slight changes to it but can't push to @LeSeulArtichaut branch.

r? @wesleywiser @rust-lang/wg-prioritization

4 years agoRollup merge of #73688 - poliorcetics:self-keyword, r=joshtriplett
Dylan DPC [Thu, 25 Jun 2020 00:03:40 +0000 (02:03 +0200)]
Rollup merge of #73688 - poliorcetics:self-keyword, r=joshtriplett

Document the self keyword

Partial fix of #34601.

This documents the `self` keyword, adding several examples and a link to the reference.

4 years agoRollup merge of #73634 - nbdd0121:typeck, r=nikomatsakis
Dylan DPC [Thu, 25 Jun 2020 00:03:38 +0000 (02:03 +0200)]
Rollup merge of #73634 - nbdd0121:typeck, r=nikomatsakis

Add UI test for issue 73592

It happens that #72280 accidentally fixed a bug which is later discovered in #73592. This PR adds a UI test to prevent future regression.

Closes #73592

4 years agoRollup merge of #73616 - pickfire:liballoc-hash, r=joshtriplett
Dylan DPC [Thu, 25 Jun 2020 00:03:36 +0000 (02:03 +0200)]
Rollup merge of #73616 - pickfire:liballoc-hash, r=joshtriplett

Liballoc minor hash import tweak

4 years agoRollup merge of #73516 - Crabapple-iOS:feature/apple-dynamic-linking, r=nikomatsakis
Dylan DPC [Thu, 25 Jun 2020 00:03:34 +0000 (02:03 +0200)]
Rollup merge of #73516 - Crabapple-iOS:feature/apple-dynamic-linking, r=nikomatsakis

Allow dynamic linking for iOS/tvOS targets

During the development and testing of the [Crabapple project](https://github.com/Crabapple-iOS/Crabapple), one obstacle was the lack of `cdylib` target support for iOS. Surprisingly, once `dynamic_linking` was enabled for iOS targets, it worked seemingly flawlessly.

I could not find any information on why this was initially or still is disabled.

4 years agoRollup merge of #72700 - davidtwco:issue-66220-improper-ctypes-declarations, r=lcnr...
Dylan DPC [Thu, 25 Jun 2020 00:03:32 +0000 (02:03 +0200)]
Rollup merge of #72700 - davidtwco:issue-66220-improper-ctypes-declarations, r=lcnr,varkor

`improper_ctypes_definitions` lint

Addresses #19834, #66220, and #66373.

This PR takes another attempt at #65134 (reverted in #66378). Instead of modifying the existing `improper_ctypes` lint to consider `extern "C" fn` definitions in addition to `extern "C" {}` declarations, this PR adds a new lint - `improper_ctypes_definitions` - which only applies to `extern "C" fn` definitions.

In addition, the `improper_ctype_definitions` lint differs from `improper_ctypes` by considering `*T` and `&T` (where `T: Sized`) FFI-safe (addressing #66220).

There wasn't a clear consensus in #66220 (where the issues with #65134 were primarily discussed) on the approach to take, but there has [been some discussion in Zulip](https://rust-lang.zulipchat.com/#narrow/stream/131828-t-compiler/topic/.2366220.20improper_ctypes.20definitions.20vs.20declarations/near/198903086). I fully expect that we'll want to iterate on this before landing.

cc @varkor + @shepmaster (from #19834) @hanna-kruppe (active in discussing #66220), @SimonSapin (#65134 caused problems for Servo, want to make sure that this PR doesn't)

4 years agoImplement associated lang items
Aaron Hill [Mon, 25 May 2020 03:07:55 +0000 (23:07 -0400)]
Implement associated lang items

Fixes #70718

This commit allows making associated items (e.g. associated functions
and types) into lang items via the `#[lang]` attribute. This allows such
items to be accessed directly, rather than by iterating over the parent
item's associated items.

I've added `FnOnce::Output` as a lang item, and updated one old usage to
use the new lang item. The remaining uses can be updated separately.

4 years agoAuto merge of #73660 - flip1995:clippyup, r=nikomatsakis
bors [Wed, 24 Jun 2020 19:33:02 +0000 (19:33 +0000)]
Auto merge of #73660 - flip1995:clippyup, r=nikomatsakis

Update Clippy

4 years agoMake `std::panicking::panic_count::is_zero` inline and move the slow path into a...
Eduardo Sánchez Muñoz [Wed, 24 Jun 2020 16:17:27 +0000 (18:17 +0200)]
Make `std::panicking::panic_count::is_zero` inline and move the slow path into a separate cold function.

4 years agoAuto merge of #73692 - Dylan-DPC:rollup-ehzsbfw, r=Dylan-DPC
bors [Wed, 24 Jun 2020 15:47:22 +0000 (15:47 +0000)]
Auto merge of #73692 - Dylan-DPC:rollup-ehzsbfw, r=Dylan-DPC

Rollup of 6 pull requests

Successful merges:

 - #73638 (Remove unused crate imports in 2018 edition crates)
 - #73639 (Change heuristic for determining range literal)
 - #73646 (Add some regression tests)
 - #73652 (Add re-exports to use suggestions)
 - #73667 (Update BTreeMap::new() doc)
 - #73675 (Update books)

Failed merges:

r? @ghost

4 years agoAlert @WG-prioritization/alerts instead of @WG-prioritization
Santiago Pastorino [Wed, 24 Jun 2020 15:36:17 +0000 (12:36 -0300)]
Alert @WG-prioritization/alerts instead of @WG-prioritization

4 years agoChange wg-prioritization stream
Santiago Pastorino [Wed, 24 Jun 2020 15:32:44 +0000 (12:32 -0300)]
Change wg-prioritization stream

4 years agoAdd procedure for prioritization notifications on Zulip
LeSeulArtichaut [Wed, 24 Jun 2020 13:33:08 +0000 (15:33 +0200)]
Add procedure for prioritization notifications on Zulip

4 years agoRollup merge of #73675 - ehuss:update-books, r=ehuss
Dylan DPC [Wed, 24 Jun 2020 12:28:47 +0000 (14:28 +0200)]
Rollup merge of #73675 - ehuss:update-books, r=ehuss

Update books

## reference

5 commits in 5d40ba5c2515caffa7790cda621239dc21ef5a72..04d5d5d7ba624b6f5016298451f3a63d557f3260
2020-06-06 20:25:36 -0700 to 2020-06-16 15:08:05 -0700
- Mention `feature="foo"` is a Cargo convention. (rust-lang-nursery/reference#833)
- fix out of date info on type aliases (rust-lang-nursery/reference#831)
- Fix an invalid variable name in the loop example (rust-lang-nursery/reference#832)
- Fix note about using proc_macro with Cargo. (rust-lang-nursery/reference#815)
- Add a link to the definition of Pattern_White_Space. (rust-lang-nursery/reference#824)

## book

7 commits in 30cd9dfe71c446de63826bb4472627af45acc9db..4e7c00bece1544d409312ec93467beb62b5bd0cb
2020-06-07 23:07:19 -0500 to 2020-06-19 09:39:12 -0400
- Link to the reference file that exists
- Link to the reference
- Clean up discussion around advanced lifetime stuff (rust-lang/book#2351)
- Reword Chapter 6 page 2, match (rust-lang/book#2374)
- Clarify some package/crate distinctions in chapter 14 (rust-lang/book#2373)
- Not mandatory with cargo 1.41.0-nightly (rust-lang/book#2368)
- Use same naming for Rhs as libcore/ops (rust-lang/book#2371)

## rust-by-example

4 commits in 7aa82129aa23e7e181efbeb8da03a2a897ef6afc..6f94ccb48da6fa4ed0031290f21411cf789f7d5e
2020-05-25 14:54:26 -0300 to 2020-06-20 17:51:30 -0300
- Update to mdbook 0.3.7 (rust-lang/rust-by-example#1352)
- Update fn.md (rust-lang/rust-by-example#1351)
- Fixed typo in formatted print (rust-lang/rust-by-example#1350)
- This explanation incorrectly inverts the meaning of SuperTrait (rust-lang/rust-by-example#1349)

## embedded-book

5 commits in 5555a97f04ad7974ac6fb8fb47c267c4274adf4a..616962ad0dd80f34d8b802da038d0aed9dd691bb
2020-05-25 18:00:51 +0000 to 2020-06-23 16:03:45 +0000
- Update RTFM name to RTIC, fixed links, updated singletons.md example.  (rust-embedded/book#254)
- Note on how to rebuild if memory.x is changed  (rust-embedded/book#253)
- Ease the readers into the Discovery book  (rust-embedded/book#250)
- Provide a note on 'extern crate' usage in edition 2018 syntax of Rust  (rust-embedded/book#248)
- Fix Typos and Improve Readability  (rust-embedded/book#245)

4 years agoRollup merge of #73667 - nrabulinski:master, r=Dylan-DPC
Dylan DPC [Wed, 24 Jun 2020 12:28:45 +0000 (14:28 +0200)]
Rollup merge of #73667 - nrabulinski:master, r=Dylan-DPC

Update BTreeMap::new() doc

Updates the documentation according to [this comment](https://github.com/rust-lang/rust/pull/72876/files/0c5c644c91edf6ed949cfa5ffc524f43369df604#r433232581) on #72876

4 years agoRollup merge of #73652 - da-x:add-reexported-to-use-suggestions, r=petrochenkov
Dylan DPC [Wed, 24 Jun 2020 12:28:43 +0000 (14:28 +0200)]
Rollup merge of #73652 - da-x:add-reexported-to-use-suggestions, r=petrochenkov

Add re-exports to use suggestions

In the following example, an inaccessible path is suggested via `use foo::bar::X;` whereas an accessible public exported path can be suggested instead.

```rust
mod foo {
    mod bar {
        pub struct X;
    }
    pub use self::bar::X;
}

fn main() { X; }
```

This fixes the issue.

4 years agoRollup merge of #73646 - JohnTitor:add-tests, r=Dylan-DPC
Dylan DPC [Wed, 24 Jun 2020 12:28:41 +0000 (14:28 +0200)]
Rollup merge of #73646 - JohnTitor:add-tests, r=Dylan-DPC

Add some regression tests

Closes #44861
Closes #51506
Closes #59435
Closes #69840

4 years agoRollup merge of #73639 - ayazhafiz:i/73553, r=davidtwco
Dylan DPC [Wed, 24 Jun 2020 12:28:39 +0000 (14:28 +0200)]
Rollup merge of #73639 - ayazhafiz:i/73553, r=davidtwco

Change heuristic for determining range literal

Currently, rustc uses a heuristic to determine if a range expression is
not a literal based on whether the expression looks like a function call
or struct initialization. This fails for range literals whose
lower/upper bounds are the results of function calls. A possibly-better
heuristic is to check if the expression contains `..`, required in range
literals.

Of course, this is also not perfect; for example, if the range
expression is a struct which includes some text with `..` this will
fail, but in general I believe it is a better heuristic.

A better alternative altogether is to add the `QPath::LangItem` enum
variant suggested in #60607. I would be happy to do this as a precursor
to this patch if someone is able to provide general suggestions on how
usages of `QPath` need to be changed later in the compiler with the
`LangItem` variant.

Closes #73553

4 years agoRollup merge of #73638 - yuqio:remove-unused-crate-imports, r=nikomatsakis
Dylan DPC [Wed, 24 Jun 2020 12:28:33 +0000 (14:28 +0200)]
Rollup merge of #73638 - yuqio:remove-unused-crate-imports, r=nikomatsakis

Remove unused crate imports in 2018 edition crates

Closes #73570

4 years agoAuto merge of #73679 - ehuss:update-cargo, r=ehuss
bors [Wed, 24 Jun 2020 12:08:53 +0000 (12:08 +0000)]
Auto merge of #73679 - ehuss:update-cargo, r=ehuss

Update cargo

9 commits in 089cbb80b73ba242efdcf5430e89f63fa3b5328d..c26576f9adddd254b3dd63aecba176434290a9f6
2020-06-15 14:38:34 +0000 to 2020-06-23 16:21:21 +0000
- Adding environment variable CARGO_PKG_LICENSE_FILE (rust-lang/cargo#8387)
- Enable "--target-dir" in "cargo install" (rust-lang/cargo#8391)
- Add support for `workspace.metadata` table (rust-lang/cargo#8323)
- Fix overzealous `clean -p` for reserved names. (rust-lang/cargo#8398)
- Fix order-dependent feature resolution. (rust-lang/cargo#8395)
- Correct mispelling of `cargo`. (rust-lang/cargo#8389)
- Add missing license field. (rust-lang/cargo#8386)
- Adding environment variable CARGO_PKG_LICENSE (rust-lang/cargo#8325)
- Cut down on data fetch from git dependencies (rust-lang/cargo#8363)

4 years agoDocument the self keyword
Alexis Bourget [Wed, 24 Jun 2020 11:52:57 +0000 (13:52 +0200)]
Document the self keyword

4 years agoimproper_ctypes: only allow params in defns mode
David Wood [Sun, 21 Jun 2020 19:30:41 +0000 (20:30 +0100)]
improper_ctypes: only allow params in defns mode

This commit adjusts the behaviour introduced in a previous commit so
that generic parameters and projections are only allowed in the
definitions mode - and are otherwise a bug. Generic parameters in
declarations are prohibited earlier in the compiler, so if that branch
were reached, it would be a bug.

Signed-off-by: David Wood <david@davidtw.co>
4 years agoimproper_ctypes: allow pointers to sized types
David Wood [Thu, 28 May 2020 16:11:39 +0000 (17:11 +0100)]
improper_ctypes: allow pointers to sized types

This commit changes the improper ctypes lint (when operating on
definitions) to consider raw pointers or references to sized types as
FFI-safe.

Signed-off-by: David Wood <david@davidtw.co>
4 years agolints: add `improper_ctypes_definitions`
David Wood [Thu, 28 May 2020 14:57:09 +0000 (15:57 +0100)]
lints: add `improper_ctypes_definitions`

This commit adds a new lint - `improper_ctypes_definitions` - which
functions identically to `improper_ctypes`, but on `extern "C" fn`
definitions (as opposed to `improper_ctypes`'s `extern "C" {}`
declarations).

Signed-off-by: David Wood <david@davidtw.co>
4 years agoUpdate cargo
Eric Huss [Wed, 24 Jun 2020 02:59:10 +0000 (19:59 -0700)]
Update cargo

4 years agoAuto merge of #73293 - Aaron1011:feature/macro-rules-arg-capture, r=petrochenkov
bors [Wed, 24 Jun 2020 01:24:38 +0000 (01:24 +0000)]
Auto merge of #73293 - Aaron1011:feature/macro-rules-arg-capture, r=petrochenkov

Always capture tokens for `macro_rules!` arguments

When we invoke a proc-macro, the `TokenStream` we pass to it may contain 'interpolated' AST fragments, represented by `rustc_ast::token::Nonterminal`. In order to correctly, pass a `Nonterminal` to a proc-macro, we need to have 'captured' its `TokenStream` at the time the AST was parsed.

Currently, we perform this capturing when attributes are present on items and expressions, since we will end up using a `Nonterminal` to pass the item/expr to any proc-macro attributes it is annotated with. However, `Nonterminal`s are also introduced by the expansion of metavariables in `macro_rules!` macros. Since these metavariables may be passed to proc-macros, we need to have tokens available to avoid the need to pretty-print and reparse (see https://github.com/rust-lang/rust/issues/43081).

This PR unconditionally performs token capturing for AST items and expressions that are passed to a `macro_rules!` invocation. We cannot know in advance if captured item/expr will be passed to proc-macro, so this is needed to ensure that tokens will always be available when they are needed.

This ensures that proc-macros will receive tokens with proper `Spans` (both location and hygiene) in more cases. Like all work on https://github.com/rust-lang/rust/issues/43081, this will cause regressions in proc-macros that were relying on receiving tokens with dummy spans.

In this case, Crater revealed only one regression: the [Pear](https://github.com/SergioBenitez/Pear) crate (a helper for [rocket](https://github.com/SergioBenitez/Rocket)), which was previously [fixed](https://github.com/SergioBenitez/Pear/pull/25) as part of https://github.com/rust-lang/rust/pull/73084.

This regression manifests itself as the following error:

```
[INFO] [stdout] error: proc macro panicked
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/rocket_http-0.4.5/src/parse/uri/parser.rs:119:34
[INFO] [stdout]     |
[INFO] [stdout] 119 |             let path_and_query = pear_try!(path_and_query(is_pchar));
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: message: called `Option::unwrap()` on a `None` value
[INFO] [stdout]     = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
```

It can be fixed by running `cargo update -p pear`, which updates your `Cargo.lock` to use the latest version of Pear (which includes a bugfix for the regression).

Split out from https://github.com/rust-lang/rust/pull/73084/

4 years agoUpdate books
Eric Huss [Wed, 24 Jun 2020 00:56:33 +0000 (17:56 -0700)]
Update books

4 years agoAuto merge of #73669 - Manishearth:rollup-0n4u7vq, r=Manishearth
bors [Tue, 23 Jun 2020 21:33:22 +0000 (21:33 +0000)]
Auto merge of #73669 - Manishearth:rollup-0n4u7vq, r=Manishearth

Rollup of 11 pull requests

Successful merges:

 - #72780 (Enforce doc alias check)
 - #72876 (Mention that BTreeMap::new() doesn't allocate)
 - #73244 (Check for assignments between non-conflicting generator saved locals)
 - #73488 (code coverage foundation for hash and num_counters)
 - #73523 (Fix -Z unpretty=everybody_loops)
 - #73587 (Move remaining `NodeId` APIs from `Definitions` to `Resolver`)
 - #73601 (Point at the call span when overflow occurs during monomorphization)
 - #73613 (The const propagator cannot trace references.)
 - #73614 (fix `intrinsics::needs_drop` docs)
 - #73630 (Provide context on E0308 involving fn items)
 - #73665 (rustc: Modernize wasm checks for atomics)

Failed merges:

r? @ghost

4 years agoRollup merge of #73665 - alexcrichton:update-wasm-atomics-feature, r=davidtwco
Manish Goregaokar [Tue, 23 Jun 2020 20:10:19 +0000 (13:10 -0700)]
Rollup merge of #73665 - alexcrichton:update-wasm-atomics-feature, r=davidtwco

rustc: Modernize wasm checks for atomics

This commit modernizes how rustc checks for whether the `atomics`
feature is enabled for the wasm target. The `sess.target_features` set
is consulted instead of fiddling around with dealing with various
aspects of LLVM and that syntax.

4 years agoRollup merge of #73630 - estebank:fn-item-e0308, r=davidtwco
Manish Goregaokar [Tue, 23 Jun 2020 20:10:17 +0000 (13:10 -0700)]
Rollup merge of #73630 - estebank:fn-item-e0308, r=davidtwco

Provide context on E0308 involving fn items

Fix #73487.

4 years agoRollup merge of #73614 - lcnr:patch-4, r=Dylan-DPC
Manish Goregaokar [Tue, 23 Jun 2020 20:10:15 +0000 (13:10 -0700)]
Rollup merge of #73614 - lcnr:patch-4, r=Dylan-DPC

fix `intrinsics::needs_drop` docs

4 years agoRollup merge of #73613 - oli-obk:const_prop_miscompile, r=wesleywiser
Manish Goregaokar [Tue, 23 Jun 2020 20:10:13 +0000 (13:10 -0700)]
Rollup merge of #73613 - oli-obk:const_prop_miscompile, r=wesleywiser

The const propagator cannot trace references.

Thus we avoid propagation of a local the moment we encounter references to it.

fixes #73609

cc @RalfJung

r? @wesleywiser

4 years agoRollup merge of #73601 - Aaron1011:fix/better-mono-overflow-err, r=ecstatic-morse
Manish Goregaokar [Tue, 23 Jun 2020 20:10:11 +0000 (13:10 -0700)]
Rollup merge of #73601 - Aaron1011:fix/better-mono-overflow-err, r=ecstatic-morse

Point at the call span when overflow occurs during monomorphization

This improves the output for issue #72577, but there's still more work
to be done.

Currently, an overflow error during monomorphization results in an error
that points at the function we were unable to monomorphize. However, we
don't point at the call that caused the monomorphization to happen. In
the overflow occurs in a large recursive function, it may be difficult
to determine where the issue is.

This commit tracks and `Span` information during collection of
`MonoItem`s, which is used when emitting an overflow error. `MonoItem`
itself is unchanged, so this only affects
`src/librustc_mir/monomorphize/collector.rs`

4 years agoRollup merge of #73587 - marmeladema:hir-id-ification-final, r=petrochenkov
Manish Goregaokar [Tue, 23 Jun 2020 20:10:09 +0000 (13:10 -0700)]
Rollup merge of #73587 - marmeladema:hir-id-ification-final, r=petrochenkov

Move remaining `NodeId` APIs from `Definitions` to `Resolver`

Implements https://github.com/rust-lang/rust/pull/73291#issuecomment-643515557

TL;DR: it moves all fields that are only needed during name resolution passes into the `Resolver` and keep the rest in `Definitions`. This effectively enforces that all references to `NodeId`s are gone once HIR lowering is completed.

After this, the only remaining work for #50928 should be to adjust the dev guide.

r? @petrochenkov

4 years agoRollup merge of #73523 - jyn514:everybody_loops, r=ecstatic-morse
Manish Goregaokar [Tue, 23 Jun 2020 20:10:07 +0000 (13:10 -0700)]
Rollup merge of #73523 - jyn514:everybody_loops, r=ecstatic-morse

Fix -Z unpretty=everybody_loops

It turns out that this has not been working for who knows how long.
Previously:

```
pub fn h() { 1 + 2; }
```

After this change:

```
pub fn h() { loop { } }
```

This only affected the pass when run with the command line
pretty-printing option, so rustdoc was still replacing bodies with
`loop {}`.

4 years agoRollup merge of #73488 - richkadel:llvm-coverage-map-gen, r=tmandry
Manish Goregaokar [Tue, 23 Jun 2020 20:10:05 +0000 (13:10 -0700)]
Rollup merge of #73488 - richkadel:llvm-coverage-map-gen, r=tmandry

code coverage foundation for hash and num_counters

This PR is the next iteration after PR #73011 (which is still waiting on bors to merge).

@wesleywiser - PTAL
r? @tmandry

(FYI, I'm also working on injecting the coverage maps, in another branch, while waiting for these to merge.)

Thanks!

4 years agoRollup merge of #73244 - ecstatic-morse:validate-generator-mir, r=tmandry
Manish Goregaokar [Tue, 23 Jun 2020 20:10:03 +0000 (13:10 -0700)]
Rollup merge of #73244 - ecstatic-morse:validate-generator-mir, r=tmandry

Check for assignments between non-conflicting generator saved locals

This is to prevent future changes to the generator transform from reintroducing the problem that caused #73137. Namely, a store between two generator saved locals whose storage does not conflict.

My ultimate goal is to introduce a modified version of #71956 that handles this case properly.

r? @tmandry

4 years agoRollup merge of #72876 - TrolledWoods:patch-2, r=Dylan-DPC
Manish Goregaokar [Tue, 23 Jun 2020 20:10:01 +0000 (13:10 -0700)]
Rollup merge of #72876 - TrolledWoods:patch-2, r=Dylan-DPC

Mention that BTreeMap::new() doesn't allocate

I think it would be nice to mention this, so you don't have to dig through the src to look at the definition of new().

4 years agoRollup merge of #72780 - GuillaumeGomez:enforce-doc-alias-check, r=ollie27
Manish Goregaokar [Tue, 23 Jun 2020 20:09:59 +0000 (13:09 -0700)]
Rollup merge of #72780 - GuillaumeGomez:enforce-doc-alias-check, r=ollie27

Enforce doc alias check

Part of #50146.

r? @ollie27

4 years agoreview comments: wording and style
Esteban Küber [Tue, 23 Jun 2020 20:01:24 +0000 (13:01 -0700)]
review comments: wording and style

4 years agoReview fixes
Dan Aloni [Tue, 23 Jun 2020 19:25:23 +0000 (22:25 +0300)]
Review fixes

4 years agoUpdate map.rs
Nikodem Rabuliński [Tue, 23 Jun 2020 18:06:44 +0000 (20:06 +0200)]
Update map.rs

4 years agoAuto merge of #73644 - ollie27:rustdoc_alias_filter, r=GuillaumeGomez
bors [Tue, 23 Jun 2020 17:30:54 +0000 (17:30 +0000)]
Auto merge of #73644 - ollie27:rustdoc_alias_filter, r=GuillaumeGomez

rustdoc: Fix doc aliases with crate filtering

Fix a crash when searching for an alias contained in the currently selected filter crate.

Also remove alias search results for crates that should be filtered out.

The test suite needed to be fixed to actually take into account the crate filtering and check that there are no results when none are expected.

Needs to be backported to beta to fix the `std` docs.

Fixes #73620

r? @GuillaumeGomez

4 years agorustc: Modernize wasm checks for atomics
Alex Crichton [Tue, 23 Jun 2020 16:41:56 +0000 (09:41 -0700)]
rustc: Modernize wasm checks for atomics

This commit modernizes how rustc checks for whether the `atomics`
feature is enabled for the wasm target. The `sess.target_features` set
is consulted instead of fiddling around with dealing with various
aspects of LLVM and that syntax.

4 years agoMerge commit 'c2c07fa9d095931eb5684a42942a7b573a0c5238' into clippyup
flip1995 [Tue, 23 Jun 2020 15:05:22 +0000 (17:05 +0200)]
Merge commit 'c2c07fa9d095931eb5684a42942a7b573a0c5238' into clippyup

4 years agoAuto merge of #5740 - lzutao:unused-unused, r=flip1995
bors [Tue, 23 Jun 2020 14:34:18 +0000 (14:34 +0000)]
Auto merge of #5740 - lzutao:unused-unused, r=flip1995

Remove unused allowed unused attributes

changelog: none

4 years agoAuto merge of #5738 - mikerite:loops-20200623-2, r=matthiaskrgr
bors [Tue, 23 Jun 2020 14:05:45 +0000 (14:05 +0000)]
Auto merge of #5738 - mikerite:loops-20200623-2, r=matthiaskrgr

Improve end of expression check in for loop lints

changelog: none

4 years agoRemove unused allowed unused attributes
Lzu Tao [Tue, 23 Jun 2020 13:59:35 +0000 (20:59 +0700)]
Remove unused allowed unused attributes

4 years agoAuto merge of #5735 - lzutao:issue-temp, r=flip1995
bors [Tue, 23 Jun 2020 13:40:02 +0000 (13:40 +0000)]
Auto merge of #5735 - lzutao:issue-temp, r=flip1995

Add more specific GitHub issue templates

changelog: Make it easier to create feature request and bug reports with issue templates.

4 years agoAuto merge of #5741 - flip1995:rollup-8chbwhy, r=flip1995
bors [Tue, 23 Jun 2020 12:52:46 +0000 (12:52 +0000)]
Auto merge of #5741 - flip1995:rollup-8chbwhy, r=flip1995

Rollup of 9 pull requests

Successful merges:

 - #5178 (clippy-driver: pass all args to rustc if --rustc is present)
 - #5705 (Downgrade unnested_or_patterns to pedantic)
 - #5709 (Fix ICE in consts::binop)
 - #5710 (typo)
 - #5712 (Remove `bar` from blacklisted names)
 - #5713 (Use lints in Clippy that are enabled in rustc bootstrap)
 - #5716 (Fix typo in wildcard_imports)
 - #5724 (redundant_pattern_matching: avoid non-`const fn` calls in const contexts)
 - #5726 (Fix typo)

Failed merges:

r? @ghost

changelog: rollup

4 years agoRollup merge of #5726 - sozysozbot:patch-1, r=flip1995
Philipp Krones [Tue, 23 Jun 2020 12:39:50 +0000 (14:39 +0200)]
Rollup merge of #5726 - sozysozbot:patch-1, r=flip1995

Fix typo

changelog: extending it's lifetime -> extending its lifetime

4 years agoRollup merge of #5724 - ebroto:5697_const_result_option, r=Manishearth
Philipp Krones [Tue, 23 Jun 2020 12:39:49 +0000 (14:39 +0200)]
Rollup merge of #5724 - ebroto:5697_const_result_option, r=Manishearth

redundant_pattern_matching: avoid non-`const fn` calls in const contexts

changelog: Avoid suggesting non-`const fn` calls in const contexts in [`redundant_pattern_matching`]

Fixes #5697

4 years agoRollup merge of #5716 - bugadani:patch-1, r=matthiaskrgr
Philipp Krones [Tue, 23 Jun 2020 12:39:48 +0000 (14:39 +0200)]
Rollup merge of #5716 - bugadani:patch-1, r=matthiaskrgr

Fix typo in wildcard_imports

changelog: none

4 years agoRollup merge of #5713 - flip1995:more_lints, r=Manishearth
Philipp Krones [Tue, 23 Jun 2020 12:39:47 +0000 (14:39 +0200)]
Rollup merge of #5713 - flip1995:more_lints, r=Manishearth

Use lints in Clippy that are enabled in rustc bootstrap

cc https://github.com/rust-lang/rust/pull/73297#discussion_r439747061

changelog: none

4 years agoRollup merge of #5712 - ijijn:master, r=flip1995
Philipp Krones [Tue, 23 Jun 2020 12:39:45 +0000 (14:39 +0200)]
Rollup merge of #5712 - ijijn:master, r=flip1995

Remove `bar` from blacklisted names

changelog: Remove `bar` from blacklisted names
fixes #5225

4 years agoRollup merge of #5710 - lcnr:patch-1, r=flip1995
Philipp Krones [Tue, 23 Jun 2020 12:39:44 +0000 (14:39 +0200)]
Rollup merge of #5710 - lcnr:patch-1, r=flip1995

typo

changelog: none

4 years agoRollup merge of #5709 - ebroto:5389_ice, r=Manishearth
Philipp Krones [Tue, 23 Jun 2020 12:39:43 +0000 (14:39 +0200)]
Rollup merge of #5709 - ebroto:5389_ice, r=Manishearth

Fix ICE in consts::binop

changelog: Fix ICE in `consts::binop`

Fixes #5389

4 years agoRollup merge of #5705 - dtolnay:orpat, r=flip1995
Philipp Krones [Tue, 23 Jun 2020 12:39:42 +0000 (14:39 +0200)]
Rollup merge of #5705 - dtolnay:orpat, r=flip1995

Downgrade unnested_or_patterns to pedantic

Even with #5704 fixed, I don't believe it is a safe bet that if someone is using or-patterns anywhere in a codebase then they want to use it as much as possible in the whole codebase. I think it would be reasonable to reevaluate after the feature is stable. I feel that a warn-by-default lint suggesting use of an unstable feature, even if already being used in one place, is questionable.

changelog: Remove unnested_or_patterns from default set of enabled lints

4 years agoRollup merge of #5178 - matthiaskrgr:rustc_arg_pass, r=flip1995
Philipp Krones [Tue, 23 Jun 2020 12:39:40 +0000 (14:39 +0200)]
Rollup merge of #5178 - matthiaskrgr:rustc_arg_pass, r=flip1995

clippy-driver: pass all args to rustc if --rustc is present

changelog: clippy-driver: pass all args to rustc if --rustc is present

4 years agoFix fallout
flip1995 [Sat, 13 Jun 2020 16:22:49 +0000 (18:22 +0200)]
Fix fallout

4 years agoUse lints in Clippy that are enabled in rustc bootstrap
flip1995 [Sat, 13 Jun 2020 16:22:38 +0000 (18:22 +0200)]
Use lints in Clippy that are enabled in rustc bootstrap

4 years agoAuto merge of #5739 - flip1995:rustup, r=flip1995
bors [Tue, 23 Jun 2020 12:04:08 +0000 (12:04 +0000)]
Auto merge of #5739 - flip1995:rustup, r=flip1995

Rustup

changelog: none

r? @ghost

4 years agoAdd re-exports to use suggestions
Dan Aloni [Sun, 21 Jun 2020 16:31:49 +0000 (19:31 +0300)]
Add re-exports to use suggestions

In the following example, an inaccessible path is suggested via
`use foo::bar::X;` whereas an accessible public exported path can
be suggested instead.

```
mod foo {
    mod bar {
        pub struct X;
    }
    pub use self::bar::X;
}

fn main() { X; }
```

This fixes the issue.

4 years agoAdd test for issue-69840
Yuki Okushi [Tue, 23 Jun 2020 08:52:51 +0000 (17:52 +0900)]
Add test for issue-69840

4 years agoAdd test for issue-59435
Yuki Okushi [Tue, 23 Jun 2020 08:52:42 +0000 (17:52 +0900)]
Add test for issue-59435

4 years agoAdd test for issue-51506
Yuki Okushi [Tue, 23 Jun 2020 08:52:26 +0000 (17:52 +0900)]
Add test for issue-51506

4 years agoAdd test for issue-44861
Yuki Okushi [Tue, 23 Jun 2020 08:52:01 +0000 (17:52 +0900)]
Add test for issue-44861

4 years agorustdoc: Fix doc aliases with crate filtering
Oliver Middleton [Tue, 23 Jun 2020 08:18:51 +0000 (09:18 +0100)]
rustdoc: Fix doc aliases with crate filtering

Fix a crash when searching for an alias contained in the currently selected filter crate.

Also remove alias search results for crates that should be filtered out.

The test suite needed to be fixed to actually take into account the crate filtering and check that there are no results when none are expected.

4 years agoThe const propagator cannot trace references.
Oliver Scherer [Mon, 22 Jun 2020 12:03:18 +0000 (14:03 +0200)]
The const propagator cannot trace references.

Thus we avoid propagation of a local the moment we encounter references to it.

4 years agoAuto merge of #73643 - Manishearth:rollup-68dr8fz, r=Manishearth
bors [Tue, 23 Jun 2020 07:50:51 +0000 (07:50 +0000)]
Auto merge of #73643 - Manishearth:rollup-68dr8fz, r=Manishearth

Rollup of 9 pull requests

Successful merges:

 - #72271 (Improve compiler error message for wrong generic parameter order)
 - #72493 ( move leak-check to during coherence, candidate eval)
 - #73398 (A way forward for pointer equality in const eval)
 - #73472 (Clean up E0689 explanation)
 - #73496 (Account for multiple impl/dyn Trait in return type when suggesting `'_`)
 - #73515 (Add second message for LiveDrop errors)
 - #73567 (Clarify --extern documentation.)
 - #73572 (Fix typos in doc comments)
 - #73590 (bootstrap: no `config.toml` exists regression)

Failed merges:

r? @ghost

4 years agoAdd more specific GitHub issue templates
Lzu Tao [Tue, 23 Jun 2020 07:27:11 +0000 (14:27 +0700)]
Add more specific GitHub issue templates

Apply suggestions from code review

Co-authored-by: Philipp Krones <hello@philkrones.com>
4 years agoRollup merge of #73590 - davidtwco:bootstrap-fix-config-env-var, r=Mark-Simulacrum
Manish Goregaokar [Tue, 23 Jun 2020 07:34:06 +0000 (00:34 -0700)]
Rollup merge of #73590 - davidtwco:bootstrap-fix-config-env-var, r=Mark-Simulacrum

bootstrap: no `config.toml` exists regression

Fixes #73574.

This PR fixes a regression introduced in #73317 where an oversight meant that `config.toml` was assumed to exist.

4 years agoRollup merge of #73572 - JOE1994:patch-4, r=jonas-schievink
Manish Goregaokar [Tue, 23 Jun 2020 07:34:05 +0000 (00:34 -0700)]
Rollup merge of #73572 - JOE1994:patch-4, r=jonas-schievink

Fix typos in doc comments

Hello 🦀 ,

This commit fixes typos in the doc comments of 'librustc_mir/monomorphize/collector.rs'

Thank you for reviewing this PR 👍

4 years agoRollup merge of #73567 - adetaylor:extern-doc-fix, r=dtolnay
Manish Goregaokar [Tue, 23 Jun 2020 07:34:03 +0000 (00:34 -0700)]
Rollup merge of #73567 - adetaylor:extern-doc-fix, r=dtolnay

Clarify --extern documentation.

Fixes #64731, #73531.

See also https://github.com/rust-lang/rust/issues/64402#issuecomment-530852886

4 years agoRollup merge of #73515 - christianpoveda:livedrop-diagnostics, r=oli-obk
Manish Goregaokar [Tue, 23 Jun 2020 07:34:00 +0000 (00:34 -0700)]
Rollup merge of #73515 - christianpoveda:livedrop-diagnostics, r=oli-obk

Add second message for LiveDrop errors

This is an attempt to fix https://github.com/rust-lang/rust/issues/72907 by adding a second message to the `LiveDrop` diagnostics. Changing from this
```
error[E0493]: destructors cannot be evaluated at compile-time
 --> src/lib.rs:7:9
  |
7 |     let mut always_returned = None;
  |         ^^^^^^^^^^^^^^^^^^^ constants cannot evaluate destructors

error: aborting due to previous error
```
to this
```
error[E0493]: destructors cannot be evaluated at compile-time
  --> foo.rs:6:9
   |
6  |     let mut always_returned = None;
   |         ^^^^^^^^^^^^^^^^^^^ constants cannot evaluate destructors
...
10 |         always_returned = never_returned;
   |         --------------- value is dropped here

error: aborting due to previous error
```
r? @RalfJung @ecstatic-morse

4 years agoRollup merge of #73496 - estebank:opaque-missing-lts-in-fn-3, r=nikomatsakis
Manish Goregaokar [Tue, 23 Jun 2020 07:33:58 +0000 (00:33 -0700)]
Rollup merge of #73496 - estebank:opaque-missing-lts-in-fn-3, r=nikomatsakis

Account for multiple impl/dyn Trait in return type when suggesting `'_`

Make `impl` and `dyn` Trait lifetime suggestions a bit more resilient.

Follow up to #72804.

r? @nikomatsakis

4 years agoRollup merge of #73472 - GuillaumeGomez:cleanup-e0689, r=Dylan-DPC
Manish Goregaokar [Tue, 23 Jun 2020 07:33:56 +0000 (00:33 -0700)]
Rollup merge of #73472 - GuillaumeGomez:cleanup-e0689, r=Dylan-DPC

Clean up E0689 explanation

r? @Dylan-DPC

4 years agoRollup merge of #73398 - oli-obk:const_raw_ptr_cmp, r=varkor,RalfJung,nagisa
Manish Goregaokar [Tue, 23 Jun 2020 07:33:54 +0000 (00:33 -0700)]
Rollup merge of #73398 - oli-obk:const_raw_ptr_cmp, r=varkor,RalfJung,nagisa

A way forward for pointer equality in const eval

r? @varkor on the first commit and @RalfJung on the second commit

cc #53020

4 years agoRollup merge of #72493 - nikomatsakis:move-leak-check, r=matthewjasper
Manish Goregaokar [Tue, 23 Jun 2020 07:33:52 +0000 (00:33 -0700)]
Rollup merge of #72493 - nikomatsakis:move-leak-check, r=matthewjasper

 move leak-check to during coherence, candidate eval

Implementation of MCP https://github.com/rust-lang/compiler-team/issues/295.

I'd like to do a crater run on this.

Note to @rust-lang/lang: This PR is a breaking change (bugfix). It causes tests like the following to go from a future-compatibility warning #56105 to a hard error:

```rust
trait Trait {}
impl Trait for for<'a, 'b> fn(&'a u32, &'b u32) {}
impl Trait for for<'c> fn(&'c u32, &'c u32) {} // now rejected, used to warn
```

I am not aware of any instances of this code in the wild, but that is why we are doing a crater run. The reason for this change is that those two types are, in fact, the same type, and hence the two impls are overlapping.

There will still be impls that trigger #56105 after this lands, however -- I hope that we will eventually just accept those impls without warning, for the most part. One example of such an impl is this pattern, which is used by wasm-bindgen and other crates as well:

```rust
trait Trait {}
impl<T> Trait for fn(&T) { }
impl<T> Trait for fn(T) { } // still accepted, but warns
```

4 years agoRollup merge of #72271 - rakshith-ravi:master, r=varkor
Manish Goregaokar [Tue, 23 Jun 2020 07:33:46 +0000 (00:33 -0700)]
Rollup merge of #72271 - rakshith-ravi:master, r=varkor

Improve compiler error message for wrong generic parameter order

- Added optional "help" parameter that shows a help message on the compiler error if required.
- Added a simple ordered parameter as a sample help.

@varkor will make more changes as required. Let me know if I'm heading in the right direction.

Fixes #68437

r? @varkor

4 years agoUpdated query for num_counters to compute from max index
Rich Kadel [Tue, 23 Jun 2020 06:31:41 +0000 (23:31 -0700)]
Updated query for num_counters to compute from max index

Also added FIXME comments to note the possible need to accommodate
counter increment calls in source-based functions that differ from the
function context of the caller instance (e.g., inline functions).

4 years agoImprove end of expression check in for loop lints
Michael Wright [Thu, 11 Jun 2020 18:25:14 +0000 (20:25 +0200)]
Improve end of expression check in for loop lints

The code should to check that the current expression _is_ the end
expression; not that it's equal to it. The equality check seems very
wasteful in terms of performance.

4 years agoAuto merge of #5695 - esamudera:lint_mem_uninitialized, r=phansch,oli-obk
bors [Tue, 23 Jun 2020 05:14:21 +0000 (05:14 +0000)]
Auto merge of #5695 - esamudera:lint_mem_uninitialized, r=phansch,oli-obk

New lint: suggest `ptr::read` instead of `mem::replace(..., uninitialized())`

resolves: #5575

changelog: improvements to `MEM_REPLACE_WITH_UNINIT`:
- add a new test case in `tests/ui/repl_uninit.rs` to cover the case of replacing with `mem::MaybeUninit::uninit().assume_init()`.
- modify the existing `MEM_REPLACE_WITH_UNINIT` when replacing with `mem::uninitialized` to suggest using `ptr::read` instead.
- lint with `MEM_REPLACE_WITH_UNINIT` when replacing with `mem::MaybeUninit::uninit().assume_init()`

4 years agoAuto merge of #73635 - Dylan-DPC:rollup-b4wbp42, r=Dylan-DPC
bors [Tue, 23 Jun 2020 04:03:28 +0000 (04:03 +0000)]
Auto merge of #73635 - Dylan-DPC:rollup-b4wbp42, r=Dylan-DPC

Rollup of 7 pull requests

Successful merges:

 - #71756 (add Windows system error codes that should map to io::ErrorKind::TimedOut)
 - #73495 (Converted all platform-specific stdin/stdout/stderr implementations to use io:: traits)
 - #73575 (Fix typo in error_codes doc)
 - #73578 (Make is_freeze and is_copy_modulo_regions take TyCtxtAt)
 - #73586 (switch_ty is redundant)
 - #73600 (Fix spurious 'value moved here in previous iteration of loop' messages)
 - #73610 (Clean up E0699 explanation)

Failed merges:

r? @ghost

4 years agoChange heuristic for determining range literal
Ayaz Hafiz [Tue, 23 Jun 2020 03:52:44 +0000 (20:52 -0700)]
Change heuristic for determining range literal

Currently, rustc uses a heuristic to determine if a range expression is
not a literal based on whether the expression looks like a function call
or struct initialization. This fails for range literals whose
lower/upper bounds are the results of function calls. A possibly-better
heuristic is to check if the expression contains `..`, required in range
literals.

Of course, this is also not perfect; for example, if the range
expression is a struct which includes some text with `..` this will
fail, but in general I believe it is a better heuristic.

A better alternative altogether is to add the `QPath::LangItem` enum
variant suggested in #60607. I would be happy to do this as a precursor
to this patch if someone is able to provide general suggestions on how
usages of `QPath` need to be changed later in the compiler with the
`LangItem` variant.

Closes #73553

4 years agoRemove unused crate imports in 2018 edition crates
yuqio [Tue, 23 Jun 2020 03:01:20 +0000 (05:01 +0200)]
Remove unused crate imports in 2018 edition crates

4 years agousing "mir_body" (vs "body") in InstrumentCoverage
Rich Kadel [Tue, 23 Jun 2020 02:30:52 +0000 (19:30 -0700)]
using "mir_body" (vs "body") in InstrumentCoverage

The mod uses both MIR bodies and HIR bodies, so I'm trying to maintain
consistency with these names.

4 years agoPR no longer requires u32 impl TypeFoldable
Rich Kadel [Tue, 23 Jun 2020 02:27:48 +0000 (19:27 -0700)]
PR no longer requires u32 impl TypeFoldable

4 years agomoves coverage data computation from pass to query
Rich Kadel [Tue, 23 Jun 2020 02:21:56 +0000 (19:21 -0700)]
moves coverage data computation from pass to query

4 years agoRollup merge of #73610 - GuillaumeGomez:cleanup-e0699, r=Dylan-DPC
Dylan DPC [Tue, 23 Jun 2020 01:16:28 +0000 (03:16 +0200)]
Rollup merge of #73610 - GuillaumeGomez:cleanup-e0699, r=Dylan-DPC

Clean up E0699 explanation

r? @Dylan-DPC