Lines Matching defs:ArgN
113 static void printArgValueInfo(ArgNo ArgN, ProgramStateRef State,
149 ValueConstraint(ArgNo ArgN) : ArgN(ArgN) {}
217 virtual std::vector<ArgNo> getArgsToTrack() const { return {ArgN}; }
230 const bool ValidArg = ArgN == Ret || ArgN < FD->getNumParams();
239 ArgNo getArgNo() const { return ArgN; }
247 ArgNo ArgN;
280 RangeConstraint(ArgNo ArgN, RangeKind Kind, const IntRangeVector &Ranges,
282 : ValueConstraint(ArgN), Kind(Kind), Ranges(Ranges), Description(Desc) {
308 getArgType(FD, ArgN)->isIntegralType(FD->getASTContext());
359 ComparisonConstraint(ArgNo ArgN, BinaryOperator::Opcode Opcode,
361 : ValueConstraint(ArgN), Opcode(Opcode), OtherArgN(OtherArgN) {}
376 NotNullConstraint(ArgNo ArgN, bool CannotBeNull = true)
377 : ValueConstraint(ArgN), CannotBeNull(CannotBeNull) {}
399 const bool ValidArg = getArgType(FD, ArgN)->isPointerType();
420 NotNullBufferConstraint(ArgNo ArgN, ArgNo SizeArg1N,
423 : ValueConstraint(ArgN), SizeArg1N(SizeArg1N), SizeArg2N(SizeArg2N),
446 const bool ValidArg = getArgType(FD, ArgN)->isPointerType();
497 std::vector<ArgNo> Result{ArgN};
513 const bool ValidArg = getArgType(FD, ArgN)->isPointerType();
732 static QualType getArgType(const FunctionDecl *FD, ArgNo ArgN) {
734 QualType T = (ArgN == Ret)
736 : FD->getParamDecl(ArgN)->getType().getCanonicalType();
791 QualType getArgType(ArgNo ArgN) const {
792 return StdLibraryFunctionsChecker::getArgType(FD, ArgN);
829 static SVal getArgSVal(const CallEvent &Call, ArgNo ArgN) {
830 return ArgN == Ret ? Call.getReturnValue() : Call.getArgSVal(ArgN);
880 for (ArgNo ArgN : VC->getArgsToTrack()) {
881 bugreporter::trackExpressionValue(N, Call.getArgExpr(ArgN), *R);
882 R->markInteresting(Call.getArgSVal(ArgN));
884 R->addRange(Call.getArgSourceRange(ArgN));
916 StdLibraryFunctionsChecker::ArgNo ArgN, llvm::raw_ostream &Out) {
917 Out << std::to_string(ArgN + 1);
918 Out << llvm::getOrdinalSuffix(ArgN + 1);
922 void StdLibraryFunctionsChecker::printArgValueInfo(ArgNo ArgN,
928 State, getArgSVal(Call, ArgN)))
1759 auto ArgumentCondition = [](ArgNo ArgN, RangeKind Kind, IntRangeVector Ranges,
1761 return std::make_shared<RangeConstraint>(ArgN, Kind, Ranges, Desc);
1794 auto NotNull = [&](ArgNo ArgN) {
1795 return std::make_shared<NotNullConstraint>(ArgN);
1797 auto IsNull = [&](ArgNo ArgN) {
1798 return std::make_shared<NotNullConstraint>(ArgN, false);
1800 auto NotNullBuffer = [&](ArgNo ArgN, ArgNo SizeArg1N, ArgNo SizeArg2N) {
1801 return std::make_shared<NotNullBufferConstraint>(ArgN, SizeArg1N,
2165 auto ValidFileDescriptorOrAtFdcwd = [&](ArgNo ArgN) {
2167 ArgN, WithinRange, Range({AT_FDCWDv, AT_FDCWDv}, {0, IntMax}),