rust/src/libsyntax
Mazdak Farrokhzad 2f7a226c4d
Rollup merge of #57540 - estebank:eval-more, r=petrochenkov
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 #48724.
2019-01-14 20:31:55 +01:00
..
attr Make TokenStream less recursive. 2019-01-08 15:08:46 +11:00
diagnostics improve non_snake_case diagnostics 2019-01-08 13:24:38 -05:00
ext Rollup merge of #57004 - nnethercote:TS-change-Stream, r=petrochenkov 2019-01-13 17:21:39 +01:00
parse Rollup merge of #57540 - estebank:eval-more, r=petrochenkov 2019-01-14 20:31:55 +01:00
print AST/HIR: Introduce ExprKind::Err for better error recovery in the front-end 2018-12-27 15:51:36 +03:00
util AST/HIR: Introduce ExprKind::Err for better error recovery in the front-end 2018-12-27 15:51:36 +03:00
ast.rs Get rid of Block::recovered 2018-12-27 15:51:36 +03:00
build.rs Remove licenses 2018-12-25 21:08:33 -07:00
Cargo.toml Upgrade smallvec to 0.6.7 and use the new may_dangle feature. 2018-12-10 09:31:27 +11:00
config.rs remove unused imports and feature gate from tests 2019-01-08 00:21:07 +05:30
diagnostic_list.rs Remove licenses 2018-12-25 21:08:33 -07:00
early_buffered_lints.rs Remove licenses 2018-12-25 21:08:33 -07:00
entry.rs Remove licenses 2018-12-25 21:08:33 -07:00
feature_gate.rs Stabilize cfg_target_vendor, #29718 2019-01-14 14:33:04 +05:30
fold.rs Get rid of Block::recovered 2018-12-27 15:51:36 +03:00
json.rs Remove licenses 2018-12-25 21:08:33 -07:00
lib.rs make panictry! private to libsyntax 2019-01-02 11:02:30 -05:00
ptr.rs Remove licenses 2018-12-25 21:08:33 -07:00
README.md rustc-guide has moved 2018-11-26 15:03:13 -06:00
show_span.rs Remove licenses 2018-12-25 21:08:33 -07:00
source_map.rs Remove licenses 2018-12-25 21:08:33 -07:00
std_inject.rs Remove licenses 2018-12-25 21:08:33 -07:00
test.rs Remove licenses 2018-12-25 21:08:33 -07:00
test_snippet.rs Remove licenses 2018-12-25 21:08:33 -07:00
tokenstream.rs Make TokenStream less recursive. 2019-01-08 15:08:46 +11:00
visit.rs AST/HIR: Introduce ExprKind::Err for better error recovery in the front-end 2018-12-27 15:51:36 +03:00

The syntax crate contains those things concerned purely with syntax that is, the AST ("abstract syntax tree"), parser, pretty-printer, lexer, macro expander, and utilities for traversing ASTs.

For more information about how these things work in rustc, see the rustc guide: