| Age | Commit message (Collapse) | Author | Lines |
|
|
|
|
|
|
|
|
|
Suggests turbofish in patterns
Fixes #114112
r? ```@estebank```
|
|
|
|
|
|
Detect actual span for getting unexpected token from parsing macros
Fixes #112458
|
|
|
|
|
|
|
|
fix(parse): return unpected when current token is EOF
close https://github.com/rust-lang/rust/issues/111148
#111148 panic occurred because [FatalError.raise()](https://github.com/bvanjoi/rust/blob/master/compiler/rustc_parse/src/parser/mod.rs#LL540C3-L540C3) was encountered which caused by `Eof` and `Pound`(the last token) had same span, when parsing `#` in `fn a<<i<Y<w<>#`.
<img width="825" alt="image" src="https://user-images.githubusercontent.com/30187863/236612589-9e2c6a0b-18cd-408c-b636-c12a51cbcf1c.png">
There are a few ways to solve this problem:
- Change the action assign for [self.last_unexpected_token_span](https://github.com/rust-lang/rust/blob/master/compiler/rustc_parse/src/parser/diagnostics.rs#L592), for example, if current token is `Eof`, then return Error directly.
- Avoid triggering the `FatalError` when the current token is `Eof`.
I have chosen the second option because executing `expected_one_of_not_found` when the token is `Eof` but not in `ediable` seems reasonable.
|
|
|
|
|
|
|
|
|
|
Remove type ascription from parser and diagnostics
Mostly based on https://github.com/rust-lang/rust/pull/106826
Part of #101728
r? `@estebank`
|
|
My type ascription
Oh rip it out
Ah
If you think we live too much then
You can sacrifice diagnostics
Don't mix your garbage
Into my syntax
So many weird hacks keep diagnostics alive
Yet I don't even step outside
So many bad diagnostics keep tyasc alive
Yet tyasc doesn't even bother to survive!
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Parse and recover from type ascription in patterns
Reintroduce part of #106960, which was reverted in #107478.
r? `@compiler-errors`
|
|
|
|
r=jackh726
Recover `_` as `..` in field pattern
|
|
|
|
commits
Revert "review comment: Remove AST AnonTy"
This reverts commit 020cca8d36cb678e3ddc2ead41364be314d19e93.
Revert "Ensure macros are not affected"
This reverts commit 12d18e403139eeeeb339e8611b2bed4910864edb.
Revert "Emit fewer errors on patterns with possible type ascription"
This reverts commit c847a01a3b1f620c4fdb98c75805033e768975d1.
Revert "Teach parser to understand fake anonymous enum syntax"
This reverts commit 2d824206655bfb26cb5eed43490ee396542b153e.
|
|
The previous output was unintuitive to users.
|
|
Rollup of 9 pull requests
Successful merges:
- #104012 (Improve unexpected close and mismatch delimiter hint in TokenTreesReader)
- #104252 (Stabilize the const_socketaddr feature)
- #105524 (Replace libc::{type} with crate::ffi::{type})
- #107096 (Detect references to non-existant messages in Fluent resources)
- #107355 (Add regression test for #60755)
- #107384 (Remove `BOOL_TY_FOR_UNIT_TESTING`)
- #107385 (Use `FallibleTypeFolder` for `ConstInferUnifier` not `TypeRelation`)
- #107391 (rustdoc: remove inline javascript from copy-path button)
- #107398 (Remove `ControlFlow::{BREAK, CONTINUE}`)
Failed merges:
r? `@ghost`
`@rustbot` modify labels: rollup
|
|
r=petrochenkov
Improve unexpected close and mismatch delimiter hint in TokenTreesReader
Fixes #103882
Fixes #68987
Fixes #69259
The inner indentation mismatching will be covered by outer block, the new added function `report_error_prone_delim_block` will find out the error prone candidates for reporting.
|
|
Remove overlapping parts of multipart suggestions
This PR adds a debug assertion that the parts of a single substitution cannot overlap, fixes a overlapping substitution from the testsuite, and fixes https://github.com/rust-lang/rust/issues/106870.
Note that a single suggestion can still have multiple overlapping substitutions / possible edits, we just don't suggest overlapping replacements in a single edit anymore.
I've also included a fix for an unrelated bug where rustfix for `explicit_outlives_requirements` would produce multiple trailing commas for a where clause.
|
|
|
|
|
|
|
|
|
|
Parse `-> Ty | OtherTy`.
Parse type ascription in top level patterns.
|
|
Emit a single error for contiguous sequences of unknown tokens
Closes #106101
On encountering a sequence of identical source characters which are unknown tokens, note the amount of subsequent characters and advance past them silently. The old behavior was to emit an error and 'help' note for every single one.
`@rustbot` label +A-diagnostics +A-parser
|
|
|
|
|
|
|