Author: Utkarsh Saxena Date: 2022-12-22T05:20:31+01:00 New Revision: 8c0aa53b07caa604d58a0d83dc571d8fcb004972
URL: https://github.com/llvm/llvm-project/commit/8c0aa53b07caa604d58a0d83dc571d8fcb004972 DIFF: https://github.com/llvm/llvm-project/commit/8c0aa53b07caa604d58a0d83dc571d8fcb004972.diff LOG: Fix out-of-bound access in TransformNestedRequirement. Added: Modified: clang/lib/Sema/SemaTemplateInstantiate.cpp Removed: ################################################################################ diff --git a/clang/lib/Sema/SemaTemplateInstantiate.cpp b/clang/lib/Sema/SemaTemplateInstantiate.cpp index b23ae5c83d9e6..c4531470119bd 100644 --- a/clang/lib/Sema/SemaTemplateInstantiate.cpp +++ b/clang/lib/Sema/SemaTemplateInstantiate.cpp @@ -2335,7 +2335,8 @@ TemplateInstantiator::TransformNestedRequirement( llvm::SmallVector<Expr *> Result; if (!SemaRef.CheckConstraintSatisfaction( nullptr, {Req->getConstraintExpr()}, Result, TemplateArgs, - Req->getConstraintExpr()->getSourceRange(), Satisfaction)) + Req->getConstraintExpr()->getSourceRange(), Satisfaction) && + !Result.empty()) TransConstraint = Result[0]; assert(!Trap.hasErrorOccurred() && "Substitution failures must be handled " "by CheckConstraintSatisfaction."); _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits