Lines Matching refs:IDecl
427 explicit ObjCInterfaceValidatorCCC(ObjCInterfaceDecl *IDecl) in ObjCInterfaceValidatorCCC() argument
428 : CurrentIDecl(IDecl) {} in ObjCInterfaceValidatorCCC()
461 ObjCInterfaceDecl *IDecl in ActOnStartClassInterface() local
471 IDecl->setInvalidDecl(); in ActOnStartClassInterface()
476 ProcessDeclAttributeList(TUScope, IDecl, AttrList); in ActOnStartClassInterface()
477 PushOnScopeChains(IDecl, TUScope); in ActOnStartClassInterface()
481 if (!IDecl->hasDefinition()) in ActOnStartClassInterface()
482 IDecl->startDefinition(); in ActOnStartClassInterface()
492 ObjCInterfaceValidatorCCC Validator(IDecl); in ActOnStartClassInterface()
504 if (declaresSameEntity(PrevDecl, IDecl)) { in ActOnStartClassInterface()
507 IDecl->setEndOfDefinitionLoc(ClassLoc); in ActOnStartClassInterface()
523 if (NamedDecl *IDecl = T->getAs<ObjCObjectType>()->getInterface()) in ActOnStartClassInterface() local
524 SuperClassDecl = dyn_cast<ObjCInterfaceDecl>(IDecl); in ActOnStartClassInterface()
552 IDecl->setSuperClass(SuperClassDecl); in ActOnStartClassInterface()
553 IDecl->setSuperClassLoc(SuperLoc); in ActOnStartClassInterface()
554 IDecl->setEndOfDefinitionLoc(SuperLoc); in ActOnStartClassInterface()
557 IDecl->setEndOfDefinitionLoc(ClassLoc); in ActOnStartClassInterface()
562 IDecl->setProtocolList((ObjCProtocolDecl*const*)ProtoRefs, NumProtoRefs, in ActOnStartClassInterface()
564 IDecl->setEndOfDefinitionLoc(EndProtoLoc); in ActOnStartClassInterface()
567 CheckObjCDeclScope(IDecl); in ActOnStartClassInterface()
568 return ActOnObjCContainerStartDefinition(IDecl); in ActOnStartClassInterface()
596 if (NamedDecl *IDecl = T->getAs<ObjCObjectType>()->getInterface()) { in ActOnCompatibilityAlias() local
597 ClassName = IDecl->getIdentifier(); in ActOnCompatibilityAlias()
825 ObjCInterfaceDecl *IDecl = getObjCInterfaceDecl(ClassName, ClassLoc, true); in ActOnStartCategoryInterface() local
829 if (!IDecl in ActOnStartCategoryInterface()
830 || RequireCompleteType(ClassLoc, Context.getObjCInterfaceType(IDecl), in ActOnStartCategoryInterface()
837 ClassLoc, CategoryLoc, CategoryName,IDecl); in ActOnStartCategoryInterface()
841 if (!IDecl) in ActOnStartCategoryInterface()
846 if (!CategoryName && IDecl->getImplementation()) { in ActOnStartCategoryInterface()
848 Diag(IDecl->getImplementation()->getLocation(), in ActOnStartCategoryInterface()
855 = IDecl->FindCategoryDeclaration(CategoryName)) { in ActOnStartCategoryInterface()
864 ClassLoc, CategoryLoc, CategoryName, IDecl); in ActOnStartCategoryInterface()
873 IDecl->mergeClassExtensionProtocolList((ObjCProtocolDecl*const*)ProtoRefs, in ActOnStartCategoryInterface()
888 ObjCInterfaceDecl *IDecl = getObjCInterfaceDecl(ClassName, ClassLoc, true); in ActOnStartCategoryImplementation() local
890 if (IDecl && IDecl->hasDefinition()) { in ActOnStartCategoryImplementation()
891 CatIDecl = IDecl->FindCategoryDeclaration(CatName); in ActOnStartCategoryImplementation()
897 CatName, IDecl); in ActOnStartCategoryImplementation()
903 ObjCCategoryImplDecl::Create(Context, CurContext, CatName, IDecl, in ActOnStartCategoryImplementation()
906 if (!IDecl) { in ActOnStartCategoryImplementation()
909 } else if (RequireCompleteType(ClassLoc, Context.getObjCInterfaceType(IDecl), in ActOnStartCategoryImplementation()
918 if (IDecl) in ActOnStartCategoryImplementation()
919 DiagnoseUseOfDecl(IDecl, ClassLoc); in ActOnStartCategoryImplementation()
933 dyn_cast<NamedDecl>(IDecl), in ActOnStartCategoryImplementation()
947 ObjCInterfaceDecl* IDecl = 0; in ActOnStartClassImplementation() local
955 } else if ((IDecl = dyn_cast_or_null<ObjCInterfaceDecl>(PrevDecl))) { in ActOnStartClassImplementation()
956 RequireCompleteType(ClassLoc, Context.getObjCInterfaceType(IDecl), in ActOnStartClassImplementation()
970 IDecl = Corrected.getCorrectionDeclAs<ObjCInterfaceDecl>(); in ActOnStartClassImplementation()
974 Diag(IDecl->getLocation(), diag::note_previous_decl) << CorrectedName in ActOnStartClassImplementation()
976 IDecl = 0; in ActOnStartClassImplementation()
999 else if (IDecl && !declaresSameEntity(IDecl->getSuperClass(), SDecl)) { in ActOnStartClassImplementation()
1009 if (!IDecl) { in ActOnStartClassImplementation()
1015 IDecl = ObjCInterfaceDecl::Create(Context, CurContext, AtClassImplLoc, in ActOnStartClassImplementation()
1018 IDecl->startDefinition(); in ActOnStartClassImplementation()
1020 IDecl->setSuperClass(SDecl); in ActOnStartClassImplementation()
1021 IDecl->setSuperClassLoc(SuperClassLoc); in ActOnStartClassImplementation()
1022 IDecl->setEndOfDefinitionLoc(SuperClassLoc); in ActOnStartClassImplementation()
1024 IDecl->setEndOfDefinitionLoc(ClassLoc); in ActOnStartClassImplementation()
1027 PushOnScopeChains(IDecl, TUScope); in ActOnStartClassImplementation()
1032 if (!IDecl->hasDefinition()) in ActOnStartClassImplementation()
1033 IDecl->startDefinition(); in ActOnStartClassImplementation()
1037 ObjCImplementationDecl::Create(Context, CurContext, IDecl, SDecl, in ActOnStartClassImplementation()
1044 if (IDecl->getImplementation()) { in ActOnStartClassImplementation()
1047 Diag(IDecl->getImplementation()->getLocation(), in ActOnStartClassImplementation()
1050 IDecl->setImplementation(IMPDecl); in ActOnStartClassImplementation()
1055 dyn_cast<NamedDecl>(IDecl), in ActOnStartClassImplementation()
1084 ObjCInterfaceDecl* IDecl = ImpDecl->getClassInterface(); in CheckImplementationIvars() local
1085 if (!IDecl) in CheckImplementationIvars()
1090 if (IDecl->isImplicitInterfaceDecl()) { in CheckImplementationIvars()
1091 IDecl->setEndOfDefinitionLoc(RBrace); in CheckImplementationIvars()
1095 IDecl->makeDeclVisibleInContext(ivars[i]); in CheckImplementationIvars()
1112 IDecl->getIvarDecl(ImplIvar->getIdentifier())) { in CheckImplementationIvars()
1119 IDecl->makeDeclVisibleInContext(ImplIvar); in CheckImplementationIvars()
1129 IVI = IDecl->ivar_begin(), IVE = IDecl->ivar_end(); in CheckImplementationIvars()
1571 ObjCInterfaceDecl *IDecl = C ? C->getClassInterface() in CheckProtocolMethodDefs() local
1573 assert (IDecl && "CheckProtocolMethodDefs - IDecl is null"); in CheckProtocolMethodDefs()
1575 ObjCInterfaceDecl *Super = IDecl->getSuperClass(); in CheckProtocolMethodDefs()
1590 NSIDecl = IDecl->lookupInheritedClass(&Context.Idents.get("NSProxy")); in CheckProtocolMethodDefs()
1622 IDecl->lookupInstanceMethod(method->getSelector(), in CheckProtocolMethodDefs()
1646 if (C && IDecl->lookupClassMethod(method->getSelector(), in CheckProtocolMethodDefs()
1655 Diag(IDecl->getLocation(), diag::note_required_for_protocol_at) << in CheckProtocolMethodDefs()
1801 ObjCInterfaceDecl *IDecl = CatDecl->getClassInterface(); in CheckCategoryVsClassMethodMatches() local
1802 if (!IDecl) in CheckCategoryVsClassMethodMatches()
1807 CatIMPDecl, IDecl, in CheckCategoryVsClassMethodMatches()
1825 if (const ObjCInterfaceDecl *IDecl = dyn_cast<ObjCInterfaceDecl>(CDecl)) in ImplMethodsVsClassMethods() local
1828 IDecl->isObjCRequiresPropertyDefs()) in ImplMethodsVsClassMethods()
1939 ObjCInterfaceDecl *IDecl in ActOnForwardClassDeclaration() local
1942 IDecl->setAtEndRange(IdentLocs[i]); in ActOnForwardClassDeclaration()
1944 PushOnScopeChains(IDecl, TUScope); in ActOnForwardClassDeclaration()
1945 CheckObjCDeclScope(IDecl); in ActOnForwardClassDeclaration()
1946 DeclsInGroup.push_back(IDecl); in ActOnForwardClassDeclaration()
2412 if (ObjCInterfaceDecl* IDecl = IC->getClassInterface()) { in ActOnAtEnd() local
2419 Ext = IDecl->visible_extensions_begin(), in ActOnAtEnd()
2420 ExtEnd = IDecl->visible_extensions_end(); in ActOnAtEnd()
2433 Ext = IDecl->visible_extensions_begin(), in ActOnAtEnd()
2434 ExtEnd = IDecl->visible_extensions_end(); in ActOnAtEnd()
2446 ImplMethodsVsClassMethods(S, IC, IDecl); in ActOnAtEnd()
2447 AtomicPropertySetterGetterRules(IC, IDecl); in ActOnAtEnd()
2450 bool HasRootClassAttr = IDecl->hasAttr<ObjCRootClassAttr>(); in ActOnAtEnd()
2451 if (IDecl->getSuperClass() == NULL) { in ActOnAtEnd()
2455 SourceLocation DeclLoc(IDecl->getLocation()); in ActOnAtEnd()
2458 << IDecl->getIdentifier(); in ActOnAtEnd()
2474 Diag(IDecl->getLocation(), diag::err_objc_root_class_subclass); in ActOnAtEnd()
2478 while (IDecl->getSuperClass()) { in ActOnAtEnd()
2479 DiagnoseDuplicateIvars(IDecl, IDecl->getSuperClass()); in ActOnAtEnd()
2480 IDecl = IDecl->getSuperClass(); in ActOnAtEnd()
2491 if (ObjCInterfaceDecl* IDecl = CatImplClass->getClassInterface()) { in ActOnAtEnd() local
2493 = IDecl->FindCategoryDeclaration(CatImplClass->getIdentifier())) { in ActOnAtEnd()
2989 if (ObjCInterfaceDecl *IDecl = ImpDecl->getClassInterface()) in ActOnMethodDeclaration() local
2990 IMD = IDecl->lookupMethod(ObjCMethod->getSelector(), in ActOnMethodDeclaration()