Lines Matching refs:SizeE
52 const Expr *SizeE) const;
54 void reportBug(VLASize_Kind Kind, const Expr *SizeE, ProgramStateRef State,
57 void reportTaintBug(const Expr *SizeE, ProgramStateRef State,
84 const Expr *SizeE = VLA->getSizeExpr(); in checkVLA() local
85 State = checkVLAIndexSize(C, State, SizeE); in checkVLA()
88 VLASizes.push_back(SizeE); in checkVLA()
111 for (const Expr *SizeE : VLASizes) { in checkVLA() local
112 auto SizeD = C.getSVal(SizeE).castAs<DefinedSVal>(); in checkVLA()
115 SVB.evalCast(SizeD, SizeTy, SizeE->getType()).castAs<NonLoc>(); in checkVLA()
139 reportBug(VLA_Overflow, SizeE, State, C); in checkVLA()
154 const Expr *SizeE) const { in checkVLAIndexSize()
155 SVal SizeV = C.getSVal(SizeE); in checkVLAIndexSize()
158 reportBug(VLA_Garbage, SizeE, State, C); in checkVLAIndexSize()
169 reportTaintBug(SizeE, State, C, SizeV); in checkVLAIndexSize()
180 reportBug(VLA_Zero, SizeE, StateZero, C); in checkVLAIndexSize()
190 QualType SizeTy = SizeE->getType(); in checkVLAIndexSize()
202 reportBug(VLA_Negative, SizeE, State, C); in checkVLAIndexSize()
211 void VLASizeChecker::reportTaintBug(const Expr *SizeE, ProgramStateRef State, in reportTaintBug() argument
224 report->addRange(SizeE->getSourceRange()); in reportTaintBug()
225 bugreporter::trackExpressionValue(N, SizeE, *report); in reportTaintBug()
233 void VLASizeChecker::reportBug(VLASize_Kind Kind, const Expr *SizeE, in reportBug() argument
259 report->addRange(SizeE->getSourceRange()); in reportBug()
260 bugreporter::trackExpressionValue(N, SizeE, *report); in reportBug()