[clang] [clang-tools-extra] [clang] check deduction consistency when partial ordering function templates (PR #100692)
Matheus Izvekov via cfe-commits
cfe-commits at lists.llvm.org
Fri Jul 26 11:49:14 PDT 2024
================
@@ -5346,7 +5346,6 @@ static EvalStmtResult EvaluateStmt(StmtResult &Result, EvalInfo &Info,
const Expr *RetExpr = cast<ReturnStmt>(S)->getRetValue();
FullExpressionRAII Scope(Info);
if (RetExpr && RetExpr->isValueDependent()) {
- EvaluateDependentExpr(RetExpr, Info);
----------------
mizvekov wrote:
This is a pure function that's supposed to be called only for its return value, which is being discarded here.
That function has an assert internally that is firing when we transform a declrefexpr referencing a lambda.
This happens on a transform with an incomplete template argument list. Empty even, all template arguments being null.
I can double check for more details, but a transform pass without any actual transformation shouldn't produce errors.
https://github.com/llvm/llvm-project/pull/100692
More information about the cfe-commits
mailing list