Make sure the source location for @property points the the @-sign (not the decl spec).
Also added a FIXME related to how we represent @properties in the ObjCInterfaceDecl AST. llvm-svn: 51450
This commit is contained in:
parent
5477a1583a
commit
4c290c7c0b
|
@ -280,7 +280,7 @@ void Parser::ParseObjCInterfaceDeclList(DeclTy *interfaceDecl,
|
|||
// FIXME. This is not right!
|
||||
: FD.D.getIdentifier());
|
||||
DeclTy *Property = Actions.ActOnProperty(CurScope,
|
||||
DS.getSourceRange().getBegin(), FD, OCDS,
|
||||
AtLoc, FD, OCDS,
|
||||
GetterSel, SetterSel,
|
||||
MethodImplKind);
|
||||
allProperties.push_back(Property);
|
||||
|
|
|
@ -878,6 +878,10 @@ void Sema::ActOnAtEnd(SourceLocation AtEndLoc, DeclTy *classDecl,
|
|||
MergeProtocolPropertiesIntoClass(I, I);
|
||||
for (ObjCInterfaceDecl::classprop_iterator P = I->classprop_begin(),
|
||||
E = I->classprop_end(); P != E; ++P) {
|
||||
// FIXME: It would be really nice if we could avoid this. Injecting
|
||||
// methods into the interface makes it hard to distinguish "real" methods
|
||||
// from synthesized "property" methods (that aren't in the source).
|
||||
// This complicicates the rewriter's life.
|
||||
I->addPropertyMethods(Context, *P, insMethods);
|
||||
}
|
||||
I->addMethods(&insMethods[0], insMethods.size(),
|
||||
|
|
Loading…
Reference in New Issue