-
Notifications
You must be signed in to change notification settings - Fork 12.6k
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 6 pull requests #69271
Rollup of 6 pull requests #69271
Commits on Feb 15, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 0663f25 - Browse repository at this point
Copy the full SHA 0663f25View commit details -
Configuration menu - View commit details
-
Copy full SHA for f2980e7 - Browse repository at this point
Copy the full SHA f2980e7View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2fd1544 - Browse repository at this point
Copy the full SHA 2fd1544View commit details -
Configuration menu - View commit details
-
Copy full SHA for f06df16 - Browse repository at this point
Copy the full SHA f06df16View commit details -
Configuration menu - View commit details
-
Copy full SHA for e2ae717 - Browse repository at this point
Copy the full SHA e2ae717View commit details -
Configuration menu - View commit details
-
Copy full SHA for 95dc9b9 - Browse repository at this point
Copy the full SHA 95dc9b9View commit details -
Configuration menu - View commit details
-
Copy full SHA for f3e9763 - Browse repository at this point
Copy the full SHA f3e9763View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1c2906e - Browse repository at this point
Copy the full SHA 1c2906eView commit details -
Configuration menu - View commit details
-
Copy full SHA for f8d2264 - Browse repository at this point
Copy the full SHA f8d2264View commit details -
Configuration menu - View commit details
-
Copy full SHA for 35884fe - Browse repository at this point
Copy the full SHA 35884feView commit details -
Configuration menu - View commit details
-
Copy full SHA for 91110fd - Browse repository at this point
Copy the full SHA 91110fdView commit details -
Configuration menu - View commit details
-
Copy full SHA for 0e0c028 - Browse repository at this point
Copy the full SHA 0e0c028View commit details -
Configuration menu - View commit details
-
Copy full SHA for cf87edf - Browse repository at this point
Copy the full SHA cf87edfView commit details -
Configuration menu - View commit details
-
Copy full SHA for 5abedd8 - Browse repository at this point
Copy the full SHA 5abedd8View commit details -
Configuration menu - View commit details
-
Copy full SHA for d6238bd - Browse repository at this point
Copy the full SHA d6238bdView commit details -
Configuration menu - View commit details
-
Copy full SHA for fe62bed - Browse repository at this point
Copy the full SHA fe62bedView commit details -
Configuration menu - View commit details
-
Copy full SHA for f12ae4a - Browse repository at this point
Copy the full SHA f12ae4aView commit details
Commits on Feb 17, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 8bafe88 - Browse repository at this point
Copy the full SHA 8bafe88View commit details -
Configuration menu - View commit details
-
Copy full SHA for 045b7d5 - Browse repository at this point
Copy the full SHA 045b7d5View commit details -
Do not emit note suggesting to implement trait to foreign type
Update tests Extend to other operations Refractor check in a separate function Fix more tests
Configuration menu - View commit details
-
Copy full SHA for 2e07892 - Browse repository at this point
Copy the full SHA 2e07892View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0b1e08c - Browse repository at this point
Copy the full SHA 0b1e08cView commit details -
parser: Do not call
bump
recursivelyToken normalization is merged directly into `bump`. Special "unknown macro variable" diagnostic for unexpected `$`s is removed as preventing legal code from compiling.
Configuration menu - View commit details
-
Copy full SHA for d33b356 - Browse repository at this point
Copy the full SHA d33b356View commit details -
Configuration menu - View commit details
-
Copy full SHA for ed2fd28 - Browse repository at this point
Copy the full SHA ed2fd28View commit details -
parser: Remove
Option
s from unnormalized tokensThey are always set synchronously with normalized tokens now
Configuration menu - View commit details
-
Copy full SHA for 06fbb0b - Browse repository at this point
Copy the full SHA 06fbb0bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 950845c - Browse repository at this point
Copy the full SHA 950845cView commit details
Commits on Feb 18, 2020
-
Rollup merge of rust-lang#69146 - matthewjasper:literal-qualif, r=eddyb
Always const qualify literals by type r? @eddyb
Configuration menu - View commit details
-
Copy full SHA for 5e2a095 - Browse repository at this point
Copy the full SHA 5e2a095View commit details -
Rollup merge of rust-lang#69159 - estebank:use-appropriate-lt-name, r…
…=ecstatic-morse Select an appropriate unused lifetime name in suggestion Follow up to rust-lang#69048.
Configuration menu - View commit details
-
Copy full SHA for 981acd9 - Browse repository at this point
Copy the full SHA 981acd9View commit details -
Rollup merge of rust-lang#69194 - Centril:assoc-extern-fuse, r=petroc…
…henkov parse: fuse associated and extern items up to defaultness Language changes: - The grammar of extern `type` aliases is unified with associated ones, and becomes: ```rust TypeItem = "type" ident generics {":" bounds}? where_clause {"=" type}? ";" ; ``` Semantic restrictions (`ast_validation`) are added to forbid any parameters in `generics`, any bounds in `bounds`, and any predicates in `where_clause`, as well as the presence of a type expression (`= u8`). (Work still remains to fuse this with free `type` aliases, but this can be done later.) - The grammar of constants and static items (free, associated, and extern) now permits the absence of an expression, and becomes: ```rust GlobalItem = {"const" {ident | "_"} | "static" "mut"? ident} {"=" expr}? ";" ; ``` - A semantic restriction is added to enforce the presence of the expression (the body). - A semantic restriction is added to reject `const _` in associated contexts. Together, these changes allow us to fuse the grammar of associated items and extern items up to `default`ness which is the main goal of the PR. ----------------------- We are now very close to fully fusing the entirely of item parsing and their ASTs. To progress further, we must make a decision: should we parse e.g. `default use foo::bar;` and whatnot? Accepting that is likely easiest from a parsing perspective, as it does not require using look-ahead, but it is perhaps not too onerous to only accept it for `fn`s (and all their various qualifiers), `const`s, `static`s, and `type`s. r? @petrochenkov
Configuration menu - View commit details
-
Copy full SHA for b864d23 - Browse repository at this point
Copy the full SHA b864d23View commit details -
Rollup merge of rust-lang#69211 - petrochenkov:prevtok, r=Centril
parser: Simplify treatment of macro variables in `Parser::bump` Follow-up to rust-lang#69006. Token normalization for `$ident` and `$lifetime` is merged directly into `bump`. Special "unknown macro variable" diagnostic for unexpected `$`s is removed as preventing legal code from compiling (as a result `bump` also doesn't call itself recursively anymore and can't make `prev_token` inconsistent). r? @Centril
Configuration menu - View commit details
-
Copy full SHA for 1cf0194 - Browse repository at this point
Copy the full SHA 1cf0194View commit details -
Rollup merge of rust-lang#69217 - LeSeulArtichaut:remove-lint-impl-op…
…, r=estebank Do not emit note suggesting to implement operation trait to foreign type When a binary operation isn't valid, you will get a lint proposing to add a trait implementation to make the operation possible. However, this cannot be done for foreign types, such as types from `core` or `std`. For example: ``` = note: an implementation of `std::ops::Add` might be missing for `std::option::Option<i8>` ``` As mentioned in rust-lang#60497 (comment): > The note suggesting implementing Add<i8> should only be emitted if Option<i8> were local to the current crate, which it isn't, so in this case it shouldn't be emitted. (I will use the CI to check tests for me, or my computer will just burn... and running IDEs is not possible on a pile of ashes) r? @estebank
Configuration menu - View commit details
-
Copy full SHA for c499570 - Browse repository at this point
Copy the full SHA c499570View commit details -
Rollup merge of rust-lang#69236 - Centril:mut-parens-at-recovery, r=e…
…stebank parse: recover `mut (x @ y)` as `(mut x @ mut y)`. Follow up to rust-lang#68992 (comment) and rust-lang#63945. Specifically, when given `let mut (x @ y)` we recover with `let (mut x @ mut y)` as the suggestion: ```rust error: `mut` must be attached to each individual binding --> $DIR/mut-patterns.rs:12:9 | LL | let mut (x @ y) = 0; | ^^^^^^^^^^^ help: add `mut` to each binding: `(mut x @ mut y)` | = note: `mut` may be followed by `variable` and `variable @ pattern` ``` r? @matthewjasper @estebank
Configuration menu - View commit details
-
Copy full SHA for 6c6d45c - Browse repository at this point
Copy the full SHA 6c6d45cView commit details