Home | History | Annotate | Download | only in Sema

Lines Matching refs:IDecl

438   explicit ObjCInterfaceValidatorCCC(ObjCInterfaceDecl *IDecl)
439 IDecl) {}
468 ObjCInterfaceDecl *IDecl,
485 nullptr, llvm::make_unique<ObjCInterfaceValidatorCCC>(IDecl),
493 if (declaresSameEntity(PrevDecl, IDecl)) {
496 IDecl->setEndOfDefinitionLoc(ClassLoc);
515 if (NamedDecl *IDecl = T->getAs<ObjCObjectType>()->getInterface()) {
516 SuperClassDecl = dyn_cast<ObjCInterfaceDecl>(IDecl);
586 IDecl->setSuperClass(SuperClassTInfo);
587 IDecl->setEndOfDefinitionLoc(SuperClassTInfo->getTypeLoc().getLocEnd());
981 ObjCInterfaceDecl *IDecl
990 IDecl->setInvalidDecl();
995 ProcessDeclAttributeList(TUScope, IDecl, AttrList);
996 PushOnScopeChains(IDecl, TUScope);
1000 if (!IDecl->hasDefinition())
1001 IDecl->startDefinition();
1005 ContextRAII SavedContext(*this, IDecl);
1007 ActOnSuperClassOfClassInterface(S, AtInterfaceLoc, IDecl,
1012 IDecl->setEndOfDefinitionLoc(ClassLoc);
1017 diagnoseUseOfProtocols(*this, IDecl, (ObjCProtocolDecl*const*)ProtoRefs,
1019 IDecl->setProtocolList((ObjCProtocolDecl*const*)ProtoRefs, NumProtoRefs,
1021 IDecl->setEndOfDefinitionLoc(EndProtoLoc);
1024 CheckObjCDeclScope(IDecl);
1025 return ActOnObjCContainerStartDefinition(IDecl);
1036 NamedDecl* IDecl = LookupSingleName(TUScope, SuperName, SuperLoc,
1038 if (!IDecl)
1041 if (const TypedefNameDecl *TDecl = dyn_cast_or_null<TypedefNameDecl>(IDecl)) {
1071 if (NamedDecl *IDecl = T->getAs<ObjCObjectType>()->getInterface()) {
1072 ClassName = IDecl->getIdentifier();
1714 ObjCInterfaceDecl *IDecl = getObjCInterfaceDecl(ClassName, ClassLoc, true);
1718 if (!IDecl
1719 || RequireCompleteType(ClassLoc, Context.getObjCInterfaceType(IDecl),
1727 IDecl, typeParamList);
1731 if (!IDecl)
1736 if (!CategoryName && IDecl->getImplementation()) {
1738 Diag(IDecl->getImplementation()->getLocation(),
1745 = IDecl->FindCategoryDeclaration(CategoryName)) {
1755 if (auto prevTypeParamList = IDecl->getTypeParamList()) {
1773 ClassLoc, CategoryLoc, CategoryName, IDecl,
1785 IDecl->mergeClassExtensionProtocolList((ObjCProtocolDecl*const*)ProtoRefs,
1800 ObjCInterfaceDecl *IDecl = getObjCInterfaceDecl(ClassName, ClassLoc, true);
1802 if (IDecl && IDecl->hasDefinition()) {
1803 CatIDecl = IDecl->FindCategoryDeclaration(CatName);
1809 CatName, IDecl,
1816 ObjCCategoryImplDecl::Create(Context, CurContext, CatName, IDecl,
1819 if (!IDecl) {
1822 } else if (RequireCompleteType(ClassLoc, Context.getObjCInterfaceType(IDecl),
1831 if (IDecl)
1832 DiagnoseUseOfDecl(IDecl, ClassLoc);
1847 dyn_cast<NamedDecl>(IDecl),
1861 ObjCInterfaceDecl *IDecl = nullptr;
1869 } else if ((IDecl = dyn_cast_or_null<ObjCInterfaceDecl>(PrevDecl))) {
1872 RequireCompleteType(ClassLoc, Context.getObjCInterfaceType(IDecl),
1909 else if (IDecl && !declaresSameEntity(IDecl->getSuperClass(), SDecl)) {
1919 if (!IDecl) {
1925 IDecl = ObjCInterfaceDecl::Create(Context, CurContext, AtClassImplLoc,
1929 IDecl->startDefinition();
1931 IDecl->setSuperClass(Context.getTrivialTypeSourceInfo(
1934 IDecl->setEndOfDefinitionLoc(SuperClassLoc);
1936 IDecl->setEndOfDefinitionLoc(ClassLoc);
1939 PushOnScopeChains(IDecl, TUScope);
1944 if (!IDecl->hasDefinition())
1945 IDecl->startDefinition();
1949 ObjCImplementationDecl::Create(Context, CurContext, IDecl, SDecl,
1956 if (IDecl->getImplementation()) {
1959 Diag(IDecl->getImplementation()->getLocation(),
1963 IDecl->setImplementation(IMPDecl);
1968 dyn_cast<NamedDecl>(IDecl),
1997 ObjCInterfaceDecl* IDecl = ImpDecl->getClassInterface();
1998 if (!IDecl)
2003 if (IDecl->isImplicitInterfaceDecl()) {
2004 IDecl->setEndOfDefinitionLoc(RBrace);
2008 IDecl->makeDeclVisibleInContext(ivars[i]);
2025 IDecl->getIvarDecl(ImplIvar->getIdentifier())) {
2031 for (const auto *CDecl : IDecl->visible_extensions()) {
2041 IDecl->makeDeclVisibleInContext(ImplIvar);
2051 IVI = IDecl->ivar_begin(), IVE = IDecl->ivar_end();
2573 ObjCInterfaceDecl *IDecl = C ? C->getClassInterface()
2575 assert (IDecl && "CheckProtocolMethodDefs - IDecl is null");
2577 ObjCInterfaceDecl *Super = IDecl->getSuperClass();
2616 // Is IDecl derived from 'NSProxy'? If so, no instance methods
2618 NSIDecl = IDecl->lookupInheritedClass(&S.Context.Idents.get("NSProxy"));
2652 IDecl->lookupMethod(method->getSelector(),
2675 if (C && IDecl->lookupMethod(method->getSelector(),
2806 ObjCInterfaceDecl *IDecl = CatDecl->getClassInterface();
2807 if (!IDecl)
2809 ObjCInterfaceDecl *SuperIDecl = IDecl->getSuperClass();
2834 CatIMPDecl, IDecl,
2865 if (const ObjCInterfaceDecl *IDecl = dyn_cast<ObjCInterfaceDecl>(CDecl)) {
2868 !IDecl->isObjCRequiresPropertyDefs();
3000 ObjCInterfaceDecl *IDecl
3004 IDecl->setAtEndRange(IdentLocs[i]);
3006 PushOnScopeChains(IDecl, TUScope);
3007 CheckObjCDeclScope(IDecl);
3008 DeclsInGroup.push_back(IDecl);
3646 if (ObjCInterfaceDecl* IDecl = IC->getClassInterface()) {
3652 for (const auto *Ext : IDecl->visible_extensions()) {
3661 for (const auto *Ext : IDecl->visible_extensions()) {
3672 ImplMethodsVsClassMethods(S, IC, IDecl);
3673 AtomicPropertySetterGetterRules(IC, IDecl);
3676 if (IDecl->hasDesignatedInitializers())
3677 DiagnoseMissingDesignatedInitOverrides(IC, IDecl);
3680 bool HasRootClassAttr = IDecl->hasAttr<ObjCRootClassAttr>();
3681 if (IDecl->getSuperClass() == nullptr) {
3685 SourceLocation DeclLoc(IDecl->getLocation());
3688 << IDecl->getIdentifier();
3704 Diag(IDecl->getLocation(), diag::err_objc_root_class_subclass);
3708 while (IDecl->getSuperClass()) {
3709 DiagnoseDuplicateIvars(IDecl, IDecl->getSuperClass());
3710 IDecl = IDecl->getSuperClass();
3721 if (ObjCInterfaceDecl* IDecl = CatImplClass->getClassInterface()) {
3723 = IDecl->FindCategoryDeclaration(CatImplClass->getIdentifier())) {
4264 if (ObjCInterfaceDecl *IDecl = ImpDecl->getClassInterface()) {
4265 if (auto *IMD = IDecl->lookupMethod(ObjCMethod->getSelector(),
4547 const ObjCInterfaceDecl *IDecl = Method->getClassInterface();
4548 if (!IDecl)
4550 Method = IDecl->lookupMethod(Method->getSelector(), /*isInstance=*/true,
4560 IV = const_cast<ObjCInterfaceDecl *>(IDecl)->lookupInstanceVariable(