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 8 pull requests #57607

Merged
merged 35 commits into from
Jan 15, 2019
Merged

Rollup of 8 pull requests #57607

merged 35 commits into from
Jan 15, 2019

Conversation

Centril
Copy link
Contributor

@Centril Centril commented Jan 14, 2019

Successful merges:

Failed merges:

r? @ghost

ssomers and others added 30 commits December 21, 2018 14:57
…hat) on asymmetrically sized sets and extend unit tests slightly beyond that
Also, don't suggest comparing to zero for non-numeric expressions.
It shouldn't matter, but hey - better safe than sorry!
Fix poor worst case performance of set intersection

Specifically, intersection of asymmetrically sized sets when the large set is on the left. See also the [latest answer on stackoverflow](https://stackoverflow.com/questions/35439376/python-set-intersection-is-faster-then-rust-hashset-intersection).

Also applied to the union member, where the effect is much less but still measurable.

Formatted the changed code only, does not increase the error count reported by tidy check, and tried to adhere to the spirit of the unit tests.
…bank

provide suggestion for invalid boolean cast

Also, don't suggest comparing to zero for non-numeric expressions.
Modify some parser diagnostics to continue evaluating beyond the parser

Continue evaluating further errors after parser errors on:
 - trailing type argument attribute
 - lifetime in incorrect location
 - incorrect binary literal
 - missing `for` in `impl Trait for Foo`
 - type argument in `where` clause
 - incorrect float literal
 - incorrect `..` in pattern
 - associated types
 - incorrect discriminator value variant error

and others. All of these were found by making `continue-parse-after-error` `true` by default to identify errors that would need few changes. There are now only a handful of errors that have any change with `continue-parse-after-error` enabled.

These changes make it so `rust` _won't_ stop evaluation after finishing parsing, enabling type checking errors to be displayed on the existing code without having to fix the parse errors.

Each commit has an individual diagnostic change with their corresponding tests.

CC rust-lang#48724.
Querify local `plugin_registrar_fn` and `proc_macro_decls_static`

Instead of calculating them as part of the `Session`, we do that in the query system.
It's also nice that these queries are already defined for external crates - here, we provide the queries for the local crate.

r? @nikomatsakis
…petrochenkov

Unaccept `extern_in_paths`

Based on completed fcp-close in rust-lang#55600, this removes `extern_in_path` (e.g. `extern::foo::bar`) from the language. The changes are primarily reversing rust-lang@32db83b.

Closes rust-lang#55600

r? @petrochenkov
…r=alexcrichton

Add a debug_assert to Vec::set_len

Following the precedent of rust-lang#52972, which found llogiq/bytecount#42.

(This may well make a test fail; let's see what Travis says.)
@Centril
Copy link
Contributor Author

Centril commented Jan 14, 2019

@bors r+ p=8

@bors
Copy link
Contributor

bors commented Jan 14, 2019

📌 Commit 8a62e39 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 Jan 14, 2019
@bors
Copy link
Contributor

bors commented Jan 14, 2019

⌛ Testing commit 8a62e39 with merge aea9f0a...

bors added a commit that referenced this pull request Jan 14, 2019
Rollup of 8 pull requests

Successful merges:

 - #57043 (Fix poor worst case performance of set intersection)
 - #57480 (Clean up and fix a bug in query plumbing)
 - #57481 (provide suggestion for invalid boolean cast)
 - #57540 (Modify some parser diagnostics to continue evaluating beyond the parser)
 - #57570 (Querify local `plugin_registrar_fn` and `proc_macro_decls_static`)
 - #57572 (Unaccept `extern_in_paths`)
 - #57585 (Recover from item trailing semicolon)
 - #57589 (Add a debug_assert to Vec::set_len)

Failed merges:

r? @ghost
@bors
Copy link
Contributor

bors commented Jan 15, 2019

☀️ Test successful - checks-travis, status-appveyor
Approved by: Centril
Pushing aea9f0a to master...

@bors bors merged commit 8a62e39 into rust-lang:master Jan 15, 2019
@Centril Centril added the rollup A PR which is a rollup label Oct 2, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
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.

8 participants