AST/HIR: Introduce ExprKind::Err for better error recovery in the front-end#56999
AST/HIR: Introduce ExprKind::Err for better error recovery in the front-end#56999bors merged 7 commits intorust-lang:masterfrom
ExprKind::Err for better error recovery in the front-end#56999Conversation
src/test/run-pass/macros/log_syntax-trace_macros-macro-locations.rs
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
The fallout on this case is a bit unfortunate.
In my ideal world we would use something similar to #53578 to parse missing the turbofish and avoid all of these errors, but that's not gonna happen anytime soon.
There was a problem hiding this comment.
This is pretty bad, but not actually a fallout from this PR.
(0..13).collect<Vec<i32>>() outside of macros already produced this.
https://play.rust-lang.org/?version=nightly&mode=debug&edition=2018&gist=0be590d180bad8cbea3789d5e7d2e269
This comment has been minimized.
This comment has been minimized.
737a178 to
4a6aa36
Compare
|
Updated with test fixes and one new commit making sure that all feature-gate errors are recoverable. |
|
r=me once travis is happy |
|
@bors r=estebank |
|
📌 Commit 4a6aa36 has been approved by |
AST/HIR: Introduce `ExprKind::Err` for better error recovery in the front-end This way we can avoid aborting compilation if expansion produces errors and generate `ExprKind::Err`s instead.
AST/HIR: Introduce `ExprKind::Err` for better error recovery in the front-end This way we can avoid aborting compilation if expansion produces errors and generate `ExprKind::Err`s instead.
Rollup of 10 pull requests Successful merges: - #56188 (enum type instead of variant suggestion unification ) - #56916 (Fix mutable references in `static mut`) - #56917 (Simplify MIR generation for logical operations) - #56953 (Mark tuple structs as live if their constructors are used) - #56964 (Remove `TokenStream::JointTree`.) - #56966 (Correct strings for raw pointer deref and array access suggestions) - #56999 (AST/HIR: Introduce `ExprKind::Err` for better error recovery in the front-end) - #57020 (Point to cause of `fn` expected return type) - #57032 (fix deprecation warnings in liballoc benches) - #57053 (Fix alignment for array indexing) Failed merges: r? @ghost
|
This PR failed in a rollup: #57075 (comment) |
|
@bors r- |
|
☔ The latest upstream changes (presumably #57108) made this pull request unmergeable. Please resolve the merge conflicts. |
9ed057f to
fdde6df
Compare
|
@bors r=estebank |
|
📌 Commit fdde6df45855155510ca567b28dc37233bab9773 has been approved by |
|
⌛ Testing commit fdde6df45855155510ca567b28dc37233bab9773 with merge 220af3d83594be55382de515730c07d9067c41d0... |
|
⌛ Testing commit 994215781986afb842e4690592859e68a60092ca with merge 3e5056f704e1e533995af5aef6564c43876feba3... |
|
💔 Test failed - status-travis |
|
The job Click to expand the log.I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact |
Fix a number of uncovered deficiencies in diagnostics
9942157 to
bc16ede
Compare
|
@bors r=estebank |
|
📌 Commit bc16ede has been approved by |
AST/HIR: Introduce `ExprKind::Err` for better error recovery in the front-end This way we can avoid aborting compilation if expansion produces errors and generate `ExprKind::Err`s instead.
|
☀️ Test successful - status-appveyor, status-travis |
Match on ast/hir::ExprKind::Err rustup rust-lang/rust#56999
This way we can avoid aborting compilation if expansion produces errors and generate
ExprKind::Errs instead.