| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2021-12-06 | Expect extern fn with no body when parsing | Michael Howell | -1/+1 | |
| Also add a test case for inserting a semicolon on extern fns. Without this fix, we got an error like this: error: expected one of `->`, `where`, or `{`, found `}` --> chk.rs:3:1 | 2 | fn foo() | --- - expected one of `->`, `where`, or `{` | | | while parsing this `fn` 3 | } | ^ unexpected token Since this is inside an extern block, you're required to write function prototypes with no body. This fixes a regression, and adds a test case for it. | ||||
| 2021-12-06 | Add better comments for FnParseMode | Michael Howell | -2/+49 | |
| 2021-12-05 | Rollup merge of #90022 - hkmatsumoto:self-upper-as-generic-parameter, r=jackh726 | Matthias Krüger | -0/+13 | |
| Explain why `Self` is invalid in generic parameters Close #89985. r? `@estebank` | ||||
| 2021-12-04 | Do not add `;` to expected tokens list when it's wrong | Michael Howell | -29/+66 | |
| There's a few spots where semicolons are checked for to do error recovery, and should not be suggested (or checked for other stuff). Fixes #87647 | ||||
| 2021-12-02 | Rollup merge of #91435 - FabianWolff:issue-91421-if-then, r=lcnr | Matthias Krüger | -10/+41 | |
| Improve diagnostic for missing half of binary operator in `if` condition Fixes #91421. I've also changed it so that it doesn't consume the `else` token in the error case, because it will try to consume it again afterwards, leading to this incorrect error message (where the `else` reported as missing is actually there): ``` error: expected one of `.`, `;`, `?`, `else`, or an operator, found `{` --> src/main.rs:4:12 | 4 | } else { 4 }; | ^ expected one of `.`, `;`, `?`, `else`, or an operator ``` r? `@lcnr` | ||||
| 2021-12-01 | Improve diagnostic for missing half of binary operator in `if` condition | Fabian Wolff | -10/+41 | |
| 2021-12-01 | Rollup merge of #91313 - petrochenkov:cratexp, r=Aaron1011 | Matthias Krüger | -1/+7 | |
| expand: Turn `ast::Crate` into a first class expansion target And stop creating a fake `mod` item for the crate root when expanding a crate, thus addressing FIXMEs left in https://github.com/rust-lang/rust/pull/82238, and making a step towards a proper support for crate-level macro attributes (cc #54726). I haven't added token collection support for the whole crate in this PR, maybe later. r? `@Aaron1011` | ||||
| 2021-11-29 | review comments: clean up | Esteban Kuber | -173/+185 | |
| 2021-11-28 | Add a suggestion if `macro_rules` is misspelled | Fabian Wolff | -4/+25 | |
| 2021-11-28 | expand: Turn `ast::Crate` into a first class expansion target | Vadim Petrochenkov | -1/+7 | |
| And stop creating a fake `mod` item for the crate root when expanding a crate. | ||||
| 2021-11-27 | Improve `unsafe` diagnostic | threadexception | -3/+25 | |
| 2021-11-25 | Reject generic arguments on mod style interpolated path | David Tolnay | -10/+24 | |
| 2021-11-25 | Let qpath contain NtTy: <$:ty as $:ty>::rest | David Tolnay | -0/+10 | |
| 2021-11-25 | When recovering from a `:` in a pattern, use adequate AST pattern | Esteban Küber | -16/+87 | |
| 2021-11-25 | Auto merge of #88781 - estebank:emoji-idents, r=oli-obk | bors | -2/+19 | |
| Tokenize emoji as if they were valid identifiers In the lexer, consider emojis to be valid identifiers and reject them later to avoid knock down parse errors. Partially address #86102. | ||||
| 2021-11-25 | Auto merge of #85346 - estebank:issue-84946, r=nagisa,varkor | bors | -54/+160 | |
| Account for incorrect `impl Foo<const N: ty> {}` syntax Fix #84946 | ||||
| 2021-11-24 | Tweak span and add more tests | Esteban Kuber | -5/+2 | |
| 2021-11-24 | Account for incorrect `impl Foo<const N: ty> {}` syntax | Esteban Küber | -54/+163 | |
| Fix #84946 | ||||
| 2021-11-23 | Auto merge of #91149 - notriddle:notriddle/rustdoc-doctest-semicolon, r=jyn514 | bors | -1/+1 | |
| fix(doctest): detect extern crate items in statement doctests This partially reverts #91026, because rustdoc needs to detect the extern statements, even when they appear inside implicit `main()`. It does not entirely revert it, so the old bug is still fixed, by duplicating some of the logic from `parse_mod` instead of trying to use it directly. Fixes #91134 | ||||
| 2021-11-23 | review comment: plural of emoji is emoji | Esteban Kuber | -1/+1 | |
| 2021-11-23 | Account for confusable codepoints when recovering emoji identifiers | Esteban Kuber | -3/+14 | |
| 2021-11-23 | Tokenize emoji as if they were valid indentifiers | Esteban Kuber | -0/+6 | |
| In the lexer, consider emojis to be valid identifiers and reject them later to avoid knock down parse errors. | ||||
| 2021-11-22 | fix(doctest): detect extern crate items in statement doctests | Michael Howell | -1/+1 | |
| This partially reverts #91026, because rustdoc needs to detect the extern statements, even when they appear inside implicit `main()`. It does not entirely revert it, so the old bug is still fixed, by duplicating some of the logic from `parse_mod` instead of trying to use it directly. Fixes #91134 | ||||
| 2021-11-22 | Split inline const to two feature gates | Gary Guo | -5/+9 | |
| 2021-11-20 | Rollup merge of #90994 - Badel2:issue-90993, r=estebank | Matthias Krüger | -1/+1 | |
| Fix ICE `#90993`: add missing call to cancel Fix #90993 | ||||
| 2021-11-20 | Fix float ICE | threadexception | -0/+2 | |
| Co-authored-by: Esteban Kuber <estebank@users.noreply.github.com> | ||||
| 2021-11-20 | Fix ICE `#90993`: add missing call to cancel | Badel2 | -1/+1 | |
| 2021-11-16 | Inline printable function | 5225225 | -5/+7 | |
| 2021-11-16 | Suggest removing the non-printing characters | 5225225 | -1/+16 | |
| 2021-11-16 | Print full char literal on error if any are non-printing | 5225225 | -0/+10 | |
| 2021-11-12 | rustc_feature: Convert `BuiltinAttribute` from tuple to a struct | Vadim Petrochenkov | -6/+5 | |
| 2021-11-07 | ast: Fix naming conventions in AST structures | Vadim Petrochenkov | -14/+15 | |
| TraitKind -> Trait TyAliasKind -> TyAlias ImplKind -> Impl FnKind -> Fn All `*Kind`s in AST are supposed to be enums. Tuple structs are converted to braced structs for the types above, and fields are reordered in syntactic order. Also, mutable AST visitor now correctly visit spans in defaultness, unsafety, impl polarity and constness. | ||||
| 2021-11-04 | Remove now unused feature from rustc_parse | Hans Kratz | -1/+0 | |
| 2021-11-04 | Optimize literal, doc comment lint as well, extract function. | Hans Kratz | -39/+2 | |
| 2021-11-04 | Create subslice as that leads to a smaller code size. | Hans Kratz | -3/+4 | |
| 2021-11-04 | Optimize bidi character detection. | Hans Kratz | -6/+40 | |
| 2021-11-01 | fix formatting | Pietro Albini | -1/+1 | |
| 2021-10-31 | Lint against RTL unicode codepoints in literals and comments | Esteban Küber | -8/+52 | |
| Address CVE-2021-42574. | ||||
| 2021-10-22 | Rollup merge of #89257 - aDotInTheVoid:macro-error-2, r=estebank | Yuki Okushi | -10/+40 | |
| Give better error for `macro_rules name` follow up to #89221 r? ``@estebank`` ``@rustbot`` modify labels: +A-diagnostics +A-parser | ||||
| 2021-10-19 | Explain why `Self` is invalid in generic parameters | Hirochika Matsumoto | -0/+13 | |
| 2021-10-18 | Rollup merge of #89990 - petrochenkov:idempty, r=wesleywiser | Matthias Krüger | -4/+4 | |
| rustc_span: `Ident::invalid` -> `Ident::empty` The equivalent for `Symbol`s was renamed some time ago (`kw::Invalid` -> `kw::Empty`), and it makes sense to do the same thing for `Ident`s as well. | ||||
| 2021-10-18 | Rollup merge of #89974 - est31:let_else_if_error, r=nagisa | Matthias Krüger | -5/+16 | |
| Nicer error message if the user attempts to do let...else if Gives a nice "conditional `else if` is not supported for `let...else`" error when encountering a `let...else if` pattern, as suggested in the [let...else tracking issue](https://github.com/rust-lang/rust/issues/87335#issuecomment-944846205). | ||||
| 2021-10-17 | Nicer error message if the user attempts to do let...else if | est31 | -5/+16 | |
| 2021-10-17 | rustc_span: `Ident::invalid` -> `Ident::empty` | Vadim Petrochenkov | -4/+4 | |
| The equivalent for `Symbol`s was renamed some time ago (`kw::Invalid` -> `kw::Empty`), and it makes sense to do the same thing for `Ident`s. | ||||
| 2021-10-17 | Some "parenthesis" and "parentheses" fixes | r00ster91 | -6/+6 | |
| 2021-10-07 | some clippy::perf fixes | Matthias Krüger | -1/+1 | |
| 2021-10-04 | Use `TokenKind::similar_tokens()` | Fabian Wolff | -1/+4 | |
| 2021-10-03 | Try to recover from a `=>` -> `=` or `->` typo in a match arm | Fabian Wolff | -1/+15 | |
| 2021-10-01 | Give better error for `macro_rules name` | Nixon Enraght-Moony | -10/+40 | |
| 2021-10-01 | Rollup merge of #89029 - notriddle:notriddle/issue-89013, r=estebank | Manish Goregaokar | -5/+32 | |
| feat(rustc_parse): recover from pre-RFC-2000 const generics syntax Fixes #89013 | ||||
