Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rollup of 9 pull requests #70296

Merged
merged 23 commits into from
Mar 23, 2020
Merged

Rollup of 9 pull requests #70296

merged 23 commits into from
Mar 23, 2020

Conversation

Centril
Copy link
Contributor

@Centril Centril commented Mar 23, 2020

Successful merges:

Failed merges:

r? @ghost

hatoo and others added 23 commits March 21, 2020 14:56
The codegen implementation already works for this, so we're:

* propagating track_caller attr from trait def to impl
* relaxing errors
* adding tests

Approved in a recent lang team meeting:
https://github.com/rust-lang/lang-team/blob/master/minutes/2020-01-09.md
We can do this now that opt_associated_item doesn't have any panicking paths.
#[track_caller] in traits

Per rust-lang#47809 (comment), this allows the `#[track_caller]` attribute on trait methods.

Includes tests for `#[track_caller]` with:

* "regular" trait impls
* default trait impls
* "blanket-tracked" trait impls, where the annotation is in the trait definition and is inherited by "regular" impls of the trait
…r=oli-obk

miri engine: turn error sanity checks into assertions

We had these as debug assertions so far to make sure our test suite is clean, but really these are conditions that should never arise and also @eddyb told me to turn non-performance-critical debug assertions into full assertions so here we go. ;)

I propose that we do a check-only crater run to make sure this does not actually happen in practice.

r? @oli-obk
Only display definition when suggesting a typo

Closes rust-lang#70206
r? @Centril
…-morse

resolve: Avoid "self-confirming" import resolutions in one more case

So the idea behind "blacklisted bindings" is that we must ignore some name definitions during resolution because otherwise they cause infinite cycles.
E.g. import
```rust
use my_crate;
```
would refer to itself (on 2018 edition) without this blacklisting, because `use my_crate;` is the first name in scope when we are resolving `my_crate` here.

In this PR we are doing this blacklisting for the case
```rust
use same::same;
```
, namely blacklisting the second `same` when resolving the first `same`.
This was previously forgotten.

Fixes rust-lang#62767
handle ConstKind::Unresolved after monomorphizing

fixes rust-lang#70125

r? @bjorn3
…an-DPC

remove redundant closures (clippy::redundant_closure)
@Centril
Copy link
Contributor Author

Centril commented Mar 23, 2020

@bors r+ p=9 rollup=never

@bors
Copy link
Contributor

bors commented Mar 23, 2020

📌 Commit 5f91f30 has been approved by Centril

@bors bors added the S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. label Mar 23, 2020
@Centril Centril added the rollup A PR which is a rollup label Mar 23, 2020
@bors
Copy link
Contributor

bors commented Mar 23, 2020

⌛ Testing commit 5f91f30 with merge 8ff7850...

@bors
Copy link
Contributor

bors commented Mar 23, 2020

☀️ Test successful - checks-azure
Approved by: Centril
Pushing 8ff7850 to master...

@bors bors added the merged-by-bors This PR was explicitly merged by bors. label Mar 23, 2020
@bors bors merged commit 8ff7850 into rust-lang:master Mar 23, 2020
@Centril Centril deleted the rollup-wvfmb3n branch March 23, 2020 09:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
merged-by-bors This PR was explicitly merged by bors. rollup A PR which is a rollup S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

10 participants