Home | History | Annotate | Download | only in Sema

Lines Matching full:sema

15 #include "clang/Sema/SemaInternal.h"
31 #include "clang/Sema/Initialization.h"
32 #include "clang/Sema/Lookup.h"
33 #include "clang/Sema/ScopeInfo.h"
34 #include "clang/Sema/Sema.h"
42 using namespace sema;
44 SourceLocation Sema::getLocationOfStringLiteralByte(const StringLiteral *SL,
52 static bool checkArgCount(Sema &S, CallExpr *call, unsigned desiredArgCount) {
72 static bool SemaBuiltinAnnotation(Sema &S, CallExpr *TheCall) {
100 static bool SemaBuiltinAddressof(Sema &S, CallExpr *TheCall) {
115 Sema::CheckBuiltinFunctionCall(unsigned BuiltinID, CallExpr *TheCall) {
420 bool Sema::CheckNeonBuiltinFunctionCall(unsigned BuiltinID, CallExpr *TheCall) {
486 bool Sema::CheckARMBuiltinExclusiveCall(unsigned BuiltinID, CallExpr *TheCall,
603 bool Sema::CheckARMBuiltinFunctionCall(unsigned BuiltinID, CallExpr *TheCall) {
634 bool Sema::CheckAArch64BuiltinFunctionCall(unsigned BuiltinID,
651 bool Sema::CheckMipsBuiltinFunctionCall(unsigned BuiltinID, CallExpr *TheCall) {
667 bool Sema::CheckX86BuiltinFunctionCall(unsigned BuiltinID, CallExpr *TheCall) {
680 bool Sema::getFormatStringInfo(const FormatAttr *Format, bool IsCXXMember,
702 static bool CheckNonNullExpr(Sema &S,
721 static void CheckNonNullArgument(Sema &S,
728 static void CheckNonNullArguments(Sema &S,
756 void Sema::checkCall(NamedDecl *FDecl, ArrayRef<const Expr *> Args,
799 void Sema::CheckConstructorCall(FunctionDecl *FDecl,
811 bool Sema::CheckFunctionCall(FunctionDecl *FDecl, CallExpr *TheCall,
856 bool Sema::CheckObjCMethodCall(ObjCMethodDecl *Method, SourceLocation lbrac,
868 bool Sema::CheckPointerCall(NamedDecl *NDecl, CallExpr *TheCall,
898 bool Sema::CheckOtherCall(CallExpr *TheCall, const FunctionProtoType *Proto) {
939 ExprResult Sema::SemaAtomicOpsOverloaded(ExprResult TheCallResult,
1258 static bool checkBuiltinArgument(Sema &S, CallExpr *E, unsigned ArgIndex) {
1284 Sema::SemaBuiltinAtomicOverloaded(ExprResult TheCallResult) {
1619 bool Sema::CheckObjCString(Expr *Arg) {
1649 bool Sema::SemaBuiltinVAStart(CallExpr *TheCall) {
1729 bool Sema::SemaBuiltinUnorderedCompare(CallExpr *TheCall) {
1773 bool Sema::SemaBuiltinFPClassification(CallExpr *TheCall, unsigned NumArgs) {
1811 ExprResult Sema::SemaBuiltinShuffleVector(CallExpr *TheCall) {
1895 ExprResult Sema::SemaConvertVectorExpr(Expr *E, TypeSourceInfo *TInfo,
1927 bool Sema::SemaBuiltinPrefetch(CallExpr *TheCall) {
1947 bool Sema::SemaBuiltinConstantArg(CallExpr *TheCall, int ArgNum,
1964 bool Sema::SemaBuiltinConstantArgRange(CallExpr *TheCall, int ArgNum,
1986 bool Sema::SemaBuiltinLongjmp(CallExpr *TheCall) {
2014 checkFormatStringExpr(Sema &S, const Expr *E, ArrayRef<const Expr *> Args,
2016 unsigned firstDataArg, Sema::FormatStringType Type,
2017 Sema::VariadicCallType CallType, bool InFunctionCall,
2194 Sema::FormatStringType Sema::GetFormatStringType(const FormatAttr *Format) {
2208 bool Sema::CheckFormatArguments(const FormatAttr *Format,
2222 bool Sema::CheckFormatArguments(ArrayRef<const Expr *> Args,
2285 Sema &S;
2298 Sema::VariadicCallType CallType;
2301 CheckFormatHandler(Sema &s, const StringLiteral *fexpr,
2306 Sema::VariadicCallType callType,
2349 static void EmitFormatDiagnostic(Sema &S, bool inFunctionCall,
2662 void CheckFormatHandler::EmitFormatDiagnostic(Sema &S, bool InFunctionCall,
2670 const Sema::SemaDiagnosticBuilder &D = S.Diag(Loc, PDiag);
2680 const Sema::SemaDiagnosticBuilder &Note =
2698 CheckPrintfHandler(Sema &s, const StringLiteral *fexpr,
2704 Sema::VariadicCallType CallType,
2867 CXXRecordMembersNamed(StringRef Name, Sema &S, QualType Ty) {
2878 Sema::LookupMemberName);
2896 bool Sema::hasCStrMethod(const Expr *E) {
3166 Sema::LookupOrdinaryName);
3293 case Sema::VAK_Valid:
3294 case Sema::VAK_ValidInCXX11:
3303 case Sema::VAK_Undefined:
3316 case Sema::VAK_Invalid:
3350 CheckScanfHandler(Sema &s, const StringLiteral *fexpr,
3355 Sema::VariadicCallType CallType,
3511 void Sema::CheckFormatString(const StringLiteral *FExpr,
3792 static void emitReplacement(Sema &S, SourceLocation Loc, SourceRange Range,
3809 LookupResult R(S, &S.Context.Idents.get("abs"), Loc, Sema::LookupAnyName);
3844 LookupResult R(S, DN, Loc, Sema::LookupAnyName);
3896 void Sema::CheckAbsoluteValueFunction(const CallExpr *Call,
3970 static bool CheckMemorySizeofForComparison(Sema &S, const Expr *E,
4056 void Sema::CheckMemaccessArguments(const CallExpr *Call,
4250 void Sema::CheckStrlcpycatArguments(const CallExpr *Call,
4337 void Sema::CheckStrncatArguments(const CallExpr *CE,
4429 CheckReturnStackAddr(Sema &S, Expr *RetValExp, QualType lhsType,
4804 Sema::CheckReturnValExpr(Expr *RetValExp, QualType lhsType,
4840 void Sema::CheckFloatComparison(SourceLocation Loc, Expr* LHS, Expr *RHS) {
5285 static void AnalyzeImplicitConversions(Sema &S, Expr *E, SourceLocation CC);
5287 static bool IsZero(Sema &S, Expr *E) {
5314 static void CheckTrivialUnsignedComparison(Sema &S, BinaryOperator *E) {
5342 static void DiagnoseOutOfRangeComparison(Sema &S, BinaryOperator *E,
5551 static void AnalyzeImpConvsInComparison(Sema &S, BinaryOperator *E) {
5559 static void AnalyzeComparison(Sema &S, BinaryOperator *E) {
5655 static bool AnalyzeBitFieldAssignment(Sema &S, FieldDecl *Bitfield, Expr *Init,
5710 static void AnalyzeAssignment(Sema &S, BinaryOperator *E) {
5729 static void DiagnoseImpCast(Sema &S, Expr *E, QualType SourceType, QualType T,
5744 static void DiagnoseImpCast(Sema &S, Expr *E, QualType T,
5752 void DiagnoseFloatingLiteralImpCast(Sema &S, FloatingLiteral *FL, QualType T,
5794 static bool IsImplicitBoolFloatConversion(Sema &S, Expr *Ex, bool ToBool) {
5813 void CheckImplicitArgumentConversions(Sema &S, CallExpr *TheCall,
5834 void CheckImplicitConversion(Sema &S, Expr *E, QualType T,
6080 void CheckConditionalOperator(Sema &S, ConditionalOperator *E,
6083 void CheckConditionalOperand(Sema &S, Expr *E, QualType T,
6096 void CheckConditionalOperator(Sema &S, ConditionalOperator *E,
6127 void AnalyzeImplicitConversions(Sema &S, Expr *OrigE, SourceLocation CC) {
6213 // Helper function for Sema::DiagnoseAlwaysNonNullPointer.
6215 static bool CheckForReference(Sema &SemaRef, const Expr *E,
6251 void Sema::DiagnoseAlwaysNonNullPointer(Expr *E,
6380 void Sema::CheckImplicitConversions(Expr *E, SourceLocation CC) {
6400 void Sema::CheckForIntOverflow (Expr *E) {
6507 Sema &SemaRef;
6653 SequenceChecker(Sema &S, Expr *E, SmallVectorImpl<Expr *> &WorkList)
6890 void Sema::CheckUnsequencedOperations(Expr *E) {
6899 void Sema::CheckCompletedExpr(Expr *E, SourceLocation CheckLoc,
6907 void Sema::CheckBitFieldInitialization(SourceLocation InitLoc,
6918 bool Sema::CheckParmsForFunctionDef(ParmVarDecl *const *P,
6988 void Sema::CheckCastAlign(Expr *Op, QualType T, SourceRange TRange) {
7043 static bool IsTailPaddedMemberArray(Sema &S, llvm::APInt Size,
7085 void Sema::CheckArrayAccess(const Expr *BaseExpr, const Expr *IndexExpr,
7203 void Sema::CheckArrayAccess(const Expr *expr) {
7276 static bool findRetainCycleOwner(Sema &S, Expr *e, RetainCycleOwner &owner) {
7409 static Expr *findCapturingExpr(Sema &S, Expr *e, RetainCycleOwner &owner) {
7444 static void diagnoseRetainCycle(Sema &S, Expr *capturer,
7478 void Sema::checkRetainCycles(ObjCMessageExpr *msg) {
7502 void Sema::checkRetainCycles(Expr *receiver, Expr *argument) {
7511 void Sema::checkRetainCycles(VarDecl *Var, Expr *Init) {
7525 static bool checkUnsafeAssignLiteral(Sema &S, SourceLocation Loc,
7534 Sema::ObjCLiteralKind Kind = S.CheckLiteralKind(RHS);
7535 if (Kind == Sema::LK_String || Kind == Sema::LK_None)
7546 static bool checkUnsafeAssignObject(Sema &S, SourceLocation Loc,
7568 bool Sema::checkUnsafeAssigns(SourceLocation Loc,
7581 void Sema::checkUnsafeExprAssigns(SourceLocation Loc,
7680 void Sema::DiagnoseEmptyStmtBody(SourceLocation StmtLoc,
7701 void Sema::DiagnoseEmptyLoopBody(const Stmt *S,
8014 const llvm::DenseMap<Sema::TypeTagMagicValue,
8015 Sema::TypeTagData> *MagicValues,
8017 Sema::TypeTagData &TypeInfo) {
8045 llvm::DenseMap<Sema::TypeTagMagicValue,
8046 Sema::TypeTagData>::const_iterator I =
8056 void Sema::RegisterTypeTagForDatatype(const IdentifierInfo *ArgumentKind,
8089 void Sema::CheckArgumentWithTypeTag(const ArgumentWithTypeTagAttr *Attr,