Lines Matching defs:SemaObjC
1 //===----- SemaObjC.cpp ---- Semantic Analysis for Objective-C ------------===//
13 #include "clang/Sema/SemaObjC.h"
29 SemaObjC::SemaObjC(Sema &S)
36 StmtResult SemaObjC::ActOnObjCForCollectionStmt(SourceLocation ForLoc,
121 ExprResult SemaObjC::CheckObjCForCollectionOperand(SourceLocation forLoc,
198 StmtResult SemaObjC::FinishObjCForCollectionStmt(Stmt *S, Stmt *B) {
207 StmtResult SemaObjC::ActOnObjCAtCatchStmt(SourceLocation AtLoc,
218 StmtResult SemaObjC::ActOnObjCAtFinallyStmt(SourceLocation AtLoc, Stmt *Body) {
223 StmtResult SemaObjC::ActOnObjCAtTryStmt(SourceLocation AtLoc, Stmt *Try,
243 StmtResult SemaObjC::BuildObjCAtThrowStmt(SourceLocation AtLoc, Expr *Throw) {
270 StmtResult SemaObjC::ActOnObjCAtThrowStmt(SourceLocation AtLoc, Expr *Throw,
287 ExprResult SemaObjC::ActOnObjCAtSynchronizedOperand(SourceLocation atLoc,
325 StmtResult SemaObjC::ActOnObjCAtSynchronizedStmt(SourceLocation AtLoc,
334 StmtResult SemaObjC::ActOnObjCAutoreleasePoolStmt(SourceLocation AtLoc,
341 TypeResult SemaObjC::actOnObjCProtocolQualifierType(
378 TypeResult SemaObjC::actOnObjCTypeArgsAndProtocolQualifiers(
485 QualType SemaObjC::BuildObjCTypeParamType(
712 QualType SemaObjC::BuildObjCObjectType(
745 ParsedType SemaObjC::ActOnObjCInstanceType(SourceLocation Loc) {
998 GetNSMutableArrayArgumentIndex(SemaObjC &S, ObjCMessageExpr *Message) {
1031 GetNSMutableDictionaryArgumentIndex(SemaObjC &S, ObjCMessageExpr *Message) {
1061 static std::optional<int> GetNSSetArgumentIndex(SemaObjC &S,
1095 void SemaObjC::CheckObjCCircularContainer(ObjCMessageExpr *Message) {
1161 void SemaObjC::checkRetainCycles(ObjCMessageExpr *msg) {
1191 void SemaObjC::checkRetainCycles(Expr *receiver, Expr *argument) {
1200 void SemaObjC::checkRetainCycles(VarDecl *Var, Expr *Init) {
1218 bool SemaObjC::CheckObjCString(Expr *Arg) {
1246 bool SemaObjC::CheckObjCMethodCall(ObjCMethodDecl *Method, SourceLocation lbrac,
1260 const DeclContext *SemaObjC::getCurObjCLexicalContext() const {
1269 IdentifierInfo *SemaObjC::getNSErrorIdent() {
1276 void SemaObjC::ActOnObjCContainerStartDefinition(ObjCContainerDecl *IDecl) {
1283 void SemaObjC::ActOnObjCContainerFinishDefinition() {
1288 void SemaObjC::ActOnObjCTemporaryExitContainerContext(
1295 void SemaObjC::ActOnObjCReenterContainerContext(ObjCContainerDecl *ObjCCtx) {
1301 ObjCProtocolDecl *SemaObjC::LookupProtocol(IdentifierInfo *II,
1318 bool SemaObjC::isObjCWritebackConversion(QualType FromType, QualType ToType,
1379 SemaObjC::ObjCSubscriptKind SemaObjC::CheckSubscriptingKind(Expr *FromE) {
1383 return SemaObjC::OS_Array;
1391 return SemaObjC::OS_Dictionary;
1400 return SemaObjC::OS_Error;
1407 return SemaObjC::OS_Error;
1429 return SemaObjC::OS_Array;
1431 return SemaObjC::OS_Dictionary;
1436 return SemaObjC::OS_Error;
1444 return SemaObjC::OS_Error;
1447 void SemaObjC::AddCFAuditedAttribute(Decl *D) {
1465 bool SemaObjC::isCFError(RecordDecl *RD) {
1490 bool SemaObjC::isNSStringType(QualType T, bool AllowNSAttributedString) {
1509 bool SemaObjC::isCFStringType(QualType T) {
1549 void SemaObjC::handleIBOutlet(Decl *D, const ParsedAttr &AL) {
1556 void SemaObjC::handleIBOutletCollection(Decl *D, const ParsedAttr &AL) {
1602 void SemaObjC::handleSuppresProtocolAttr(Decl *D, const ParsedAttr &AL) {
1613 void SemaObjC::handleDirectAttr(Decl *D, const ParsedAttr &AL) {
1627 void SemaObjC::handleDirectMembersAttr(Decl *D, const ParsedAttr &AL) {
1635 void SemaObjC::handleMethodFamilyAttr(Decl *D, const ParsedAttr &AL) {
1662 void SemaObjC::handleNSObject(Decl *D, const ParsedAttr &AL) {
1687 void SemaObjC::handleIndependentClass(Decl *D, const ParsedAttr &AL) {
1702 void SemaObjC::handleBlocksAttr(Decl *D, const ParsedAttr &AL) {
1740 void SemaObjC::AddXConsumedAttr(Decl *D, const AttributeCommonInfo &CI,
1774 SemaObjC::parsedAttrToRetainOwnershipKind(const ParsedAttr &AL) {
1798 bool SemaObjC::checkNSReturnsRetainedReturnType(SourceLocation Loc,
1809 bool SemaObjC::isValidOSObjectOutParameter(const Decl *D) {
1818 void SemaObjC::handleXReturnsXRetainedAttr(Decl *D, const ParsedAttr &AL) {
1947 void SemaObjC::handleReturnsInnerPointerAttr(Decl *D, const ParsedAttr &Attrs) {
1973 void SemaObjC::handleRequiresSuperAttr(Decl *D, const ParsedAttr &Attrs) {
1993 void SemaObjC::handleNSErrorDomain(Decl *D, const ParsedAttr &Attr) {
2026 void SemaObjC::handleBridgeAttr(Decl *D, const ParsedAttr &AL) {
2053 void SemaObjC::handleBridgeMutableAttr(Decl *D, const ParsedAttr &AL) {
2065 void SemaObjC::handleBridgeRelatedAttr(Decl *D, const ParsedAttr &AL) {
2080 void SemaObjC::handleDesignatedInitializer(Decl *D, const ParsedAttr &AL) {
2106 void SemaObjC::handleRuntimeName(Decl *D, const ParsedAttr &AL) {
2118 void SemaObjC::handleBoxable(Decl *D, const ParsedAttr &AL) {
2140 void SemaObjC::handleOwnershipAttr(Decl *D, const ParsedAttr &AL) {
2149 void SemaObjC::handlePreciseLifetimeAttr(Decl *D, const ParsedAttr &AL) {
2199 // SemaObjC::inferObjCARCLifetime must run after processing decl attributes
2223 void SemaObjC::handleExternallyRetainedAttr(Decl *D, const ParsedAttr &AL) {
2259 bool SemaObjC::GetFormatNSStringIdx(const FormatAttr *Format, unsigned &Idx) {
2271 void SemaObjC::DiagnoseCStringFormatDirectiveInCFAPI(const NamedDecl *FDecl,
2308 bool SemaObjC::isSignedCharBool(QualType Ty) {
2313 void SemaObjC::adornBoolConversionDiagWithTernaryFixit(
2357 void SemaObjC::checkArrayLiteral(QualType TargetType,
2382 void SemaObjC::checkDictionaryLiteral(