Home | History | Annotate | Download | only in Sema

Lines Matching refs:PDecl

362   ObjCPropertyDecl *PDecl =
365 PDecl->setPropertyAttributesAsWritten(
368 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_readonly);
370 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_readwrite);
372 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_nonatomic);
374 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_atomic);
376 PDecl->setGetterName(GetterSel);
377 PDecl->setSetterName(SetterSel);
378 ProcessDeclAttributes(S, PDecl, FD.D);
379 DC->addDecl(PDecl);
406 PDecl->setGetterMethodDecl(PrimaryPDecl->getGetterMethodDecl());
407 PDecl->setSetterMethodDecl(PrimaryPDecl->getSetterMethodDecl());
412 if (!Context.hasSameType(PIDecl->getType(), PDecl->getType())) {
422 !isa<ObjCObjectPointerType>(PDecl->getType()) ||
423 (!isObjCPointerConversion(PDecl->getType(), PIDecl->getType(),
427 diag::err_type_mismatch_continuation_class) << PDecl->getType();
494 ProcessPropertyDecl(PIDecl, CCPrimary, PDecl, CDecl);
495 PDecl->setGetterMethodDecl(PIDecl->getGetterMethodDecl());
496 PDecl->setSetterMethodDecl(PIDecl->getSetterMethodDecl());
498 L->AddedObjCPropertyInClassExtension(PDecl, PIDecl, CDecl);
499 return PDecl;
536 ObjCPropertyDecl *PDecl = ObjCPropertyDecl::Create(Context, DC,
542 Diag(PDecl->getLocation(), diag::err_duplicate_property);
544 PDecl->setInvalidDecl();
547 DC->addDecl(PDecl);
549 PDecl->setLexicalDeclContext(lexicalDC);
554 PDecl->setInvalidDecl();
557 ProcessDeclAttributes(S, PDecl, FD.D);
561 PDecl->setGetterName(GetterSel);
562 PDecl->setSetterName(SetterSel);
563 PDecl->setPropertyAttributesAsWritten(
567 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_readonly);
570 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_getter);
573 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_setter);
576 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_readwrite);
579 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_retain);
582 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_strong);
585 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_weak);
588 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_copy);
591 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_unsafe_unretained);
594 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_assign);
598 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_nonatomic);
600 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_atomic);
604 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_assign);
606 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_unsafe_unretained);
609 PDecl->setPropertyImplementation(ObjCPropertyDecl::Required);
611 PDecl->setPropertyImplementation(ObjCPropertyDecl::Optional);
613 return PDecl;
1381 Sema::MatchOneProtocolPropertiesInClass(Decl *CDecl, ObjCProtocolDecl *PDecl) {
1391 for (ObjCProtocolDecl::prop_iterator P = PDecl->prop_begin(),
1392 E = PDecl->prop_end(); P != E; ++P) {
1401 PDecl->getIdentifier());
1413 for (ObjCProtocolDecl::prop_iterator P = PDecl->prop_begin(),
1414 E = PDecl->prop_end(); P != E; ++P) {
1423 PDecl->getIdentifier());
1433 bool Sema::isPropertyReadonly(ObjCPropertyDecl *PDecl,
1436 if (!PDecl->isReadOnly())
1440 if (IDecl->getInstanceMethod(PDecl->getSetterName()))
1450 if (Cat->getInstanceMethod(PDecl->getSetterName()))
1453 Cat->FindPropertyDeclaration(PDecl->getIdentifier());
1463 if (IMD->getInstanceMethod(PDecl->getSetterName()))
1467 if (CIMD->getInstanceMethod(PDecl->getSetterName()))
1473 if (ImpDecl->getInstanceMethod(PDecl->getSetterName()))
1477 return isPropertyReadonly(PDecl, SIDecl);
1510 else if (ObjCProtocolDecl *PDecl = dyn_cast<ObjCProtocolDecl>(CDecl)) {
1511 for (ObjCProtocolDecl::prop_iterator P = PDecl->prop_begin(),
1512 E = PDecl->prop_end(); P != E; ++P) {
1525 for (ObjCProtocolDecl::protocol_iterator PI = PDecl->protocol_begin(),
1526 E = PDecl->protocol_end(); PI != E; ++PI)
2019 void Sema::CheckObjCPropertyAttributes(Decl *PDecl,
2024 if (!PDecl || PDecl->isInvalidDecl())
2027 ObjCPropertyDecl *PropertyDecl = cast<ObjCPropertyDecl>(PDecl);