Lines Matching defs:FExpr
5855 const StringLiteral *FExpr;
5860 : FExpr(fexpr), Offset(Offset) {}
5863 return FExpr->getString().drop_front(Offset);
5867 return FExpr->getByteLength() - getCharByteWidth() * Offset;
5870 unsigned getLength() const { return FExpr->getLength() - Offset; }
5871 unsigned getCharByteWidth() const { return FExpr->getCharByteWidth(); }
5873 StringLiteralKind getKind() const { return FExpr->getKind(); }
5875 QualType getType() const { return FExpr->getType(); }
5877 bool isAscii() const { return FExpr->isOrdinary(); }
5878 bool isWide() const { return FExpr->isWide(); }
5879 bool isUTF8() const { return FExpr->isUTF8(); }
5880 bool isUTF16() const { return FExpr->isUTF16(); }
5881 bool isUTF32() const { return FExpr->isUTF32(); }
5882 bool isPascal() const { return FExpr->isPascal(); }
5888 return FExpr->getLocationOfByte(ByteNo + Offset, SM, Features, Target,
5893 return FExpr->getBeginLoc().getLocWithOffset(Offset);
5896 SourceLocation getEndLoc() const LLVM_READONLY { return FExpr->getEndLoc(); }
5902 Sema &S, const FormatStringLiteral *FExpr, const Expr *OrigFormatExpr,
6409 const FormatStringLiteral *FExpr;
6436 : S(s), FExpr(fexpr), OrigFormatExpr(origFormatExpr), FSType(type),
6527 return FExpr->getLocationOfByte(x - Beg, S.getSourceManager(),
8077 Sema &S, const FormatStringLiteral *FExpr, const Expr *OrigFormatExpr,
8084 if (!FExpr->isAscii() && !FExpr->isUTF8()) {
8087 S.PDiag(diag::warn_format_string_is_wide_literal), FExpr->getBeginLoc(),
8093 StringRef StrRef = FExpr->getString();
8097 S.Context.getAsConstantArrayType(FExpr->getType());
8114 FExpr->getBeginLoc(),
8123 S.PDiag(diag::warn_empty_format_string), FExpr->getBeginLoc(),
8133 S, FExpr, OrigFormatExpr, Type, firstDataArg, numDataArgs,
8143 CheckScanfHandler H(S, FExpr, OrigFormatExpr, Type, firstDataArg,
8153 bool Sema::FormatStringHasSArg(const StringLiteral *FExpr) {
8155 StringRef StrRef = FExpr->getString();
8158 const ConstantArrayType *T = Context.getAsConstantArrayType(FExpr->getType());