projects
/
platform
/
upstream
/
llvm.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
9e0d8ab
)
Fix out-of-bound access in TransformNestedRequirement.
author
Utkarsh Saxena
<usx@google.com>
Thu, 22 Dec 2022 04:18:45 +0000
(
05:18
+0100)
committer
Utkarsh Saxena
<usx@google.com>
Thu, 22 Dec 2022 04:20:31 +0000
(
05:20
+0100)
clang/lib/Sema/SemaTemplateInstantiate.cpp
patch
|
blob
|
history
diff --git
a/clang/lib/Sema/SemaTemplateInstantiate.cpp
b/clang/lib/Sema/SemaTemplateInstantiate.cpp
index
b23ae5c
..
c453147
100644
(file)
--- 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.");