[PATCH] D79160: [AST] Preserve the type in RecoveryExprs for broken function calls.

2020-05-11 Thread Haojian Wu via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG8222107aa924: [AST] Preserve the type in RecoveryExprs for broken function calls. (authored by hokein). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D79160/n

[PATCH] D79160: [AST] Preserve the type in RecoveryExprs for broken function calls.

2020-05-08 Thread Haojian Wu via Phabricator via cfe-commits
hokein marked an inline comment as done. hokein added inline comments. Comment at: clang/test/SemaCXX/enable_if.cpp:417 -constexpr int B = 10 + // the carat for the error should be pointing to the problematic call (on the next line), not here. -callTemplated<0>(); // expec

[PATCH] D79160: [AST] Preserve the type in RecoveryExprs for broken function calls.

2020-05-08 Thread Haojian Wu via Phabricator via cfe-commits
hokein updated this revision to Diff 262874. hokein marked an inline comment as done. hokein added a comment. add a missing test file during the rebase. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D79160/new/ https://reviews.llvm.org/D79160 Files

[PATCH] D79160: [AST] Preserve the type in RecoveryExprs for broken function calls.

2020-05-08 Thread Haojian Wu via Phabricator via cfe-commits
hokein updated this revision to Diff 262872. hokein added a comment. rebase to master (not the D78350 ) Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D79160/new/ https://reviews.llvm.org/D79160 Files: clang/includ

[PATCH] D79160: [AST] Preserve the type in RecoveryExprs for broken function calls.

2020-05-05 Thread Haojian Wu via Phabricator via cfe-commits
hokein updated this revision to Diff 262044. hokein marked 4 inline comments as done. hokein added a comment. address comments. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D79160/new/ https://reviews.llvm.org/D79160 Files: clang/include/clang/A

[PATCH] D79160: [AST] Preserve the type in RecoveryExprs for broken function calls.

2020-05-04 Thread Sam McCall via Phabricator via cfe-commits
sammccall accepted this revision. sammccall added inline comments. This revision is now accepted and ready to land. Comment at: clang/lib/AST/ComputeDependence.cpp:488 ExprDependence clang::computeDependence(RecoveryExpr *E) { + // Even we know the concrete type of the Recovery

[PATCH] D79160: [AST] Preserve the type in RecoveryExprs for broken function calls.

2020-05-04 Thread Haojian Wu via Phabricator via cfe-commits
hokein added inline comments. Comment at: clang/lib/AST/ComputeDependence.cpp:491 + auto D = + toExprDependence(E->getType()->getDependence()) | ExprDependence::Error; for (auto *S : E->subExpressions()) sammccall wrote: > Dropping type-dependence seems

[PATCH] D79160: [AST] Preserve the type in RecoveryExprs for broken function calls.

2020-05-04 Thread Haojian Wu via Phabricator via cfe-commits
hokein updated this revision to Diff 261762. hokein marked 13 inline comments as done. hokein added a comment. address comments. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D79160/new/ https://reviews.llvm.org/D79160 Files: clang/include/clang/

[PATCH] D79160: [AST] Preserve the type in RecoveryExprs for broken function calls.

2020-04-30 Thread Sam McCall via Phabricator via cfe-commits
sammccall marked an inline comment as done. sammccall added inline comments. Comment at: clang/include/clang/AST/Expr.h:6042 /// /// For now, RecoveryExpr is type-, value- and instantiation-dependent to take /// advantage of existing machinery to deal with dependent code in C+

[PATCH] D79160: [AST] Preserve the type in RecoveryExprs for broken function calls.

2020-04-30 Thread Haojian Wu via Phabricator via cfe-commits
hokein added inline comments. Comment at: clang/lib/Sema/SemaOverload.cpp:12779 +// Guess at what the return type for an unresolvable overload should be. +static QualType chooseRecoveryType(OverloadCandidateSet &CS, I steal this function from D61722.

[PATCH] D79160: [AST] Preserve the type in RecoveryExprs for broken function calls.

2020-04-30 Thread Haojian Wu via Phabricator via cfe-commits
hokein updated this revision to Diff 261167. hokein marked 3 inline comments as done. hokein added a comment. update Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D79160/new/ https://reviews.llvm.org/D79160 Files: clang/include/clang/AST/Expr.h

[PATCH] D79160: [AST] Preserve the type in RecoveryExprs for broken function calls.

2020-04-30 Thread Haojian Wu via Phabricator via cfe-commits
hokein created this revision. Herald added subscribers: cfe-commits, arphaman. Herald added a project: clang. RecoveryExprs was modeled as dependent type to prevent bogus diagnostics and crashes in clang. This patch allows to preseve the type for broken calls when the RecoveryEprs have a known ty