sammccall added a comment.

In D59214#1919183 <https://reviews.llvm.org/D59214#1919183>, @lebedev.ri wrote:

> d5edcb90643104d6911da5c0ff44c4f33fff992f 
> <https://reviews.llvm.org/rGd5edcb90643104d6911da5c0ff44c4f33fff992f>, 
> looking forward to seeing better error recovery.


Thanks very much for your help Roman, I'm also sorry this has been difficult.

The plan for error recovery is to add a RecoveryExpr to the AST that can 
represent the known structure of an invalid expression (e.g. a function call 
with no viable overloads - this has subexpressions and possibly a known type) 
instead of dropping it as we do today. This will be used to improve diagnostics 
and also expose a more meaningful AST to tools.

A "transitive-has-errors" bit on Expr is needed as various places currently 
assume that if an Expr exists, the code is valid. (TypoExpr is a complicated 
special snowflake, and we should also be able to reduce the number of places 
that special-case it).


Repository:
  rL LLVM

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D59214/new/

https://reviews.llvm.org/D59214



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to