зеркало из https://github.com/microsoft/clang-1.git
Fixed a problem using property syntax on a 'super'
used as receiver. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68631 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Родитель
0f78feaecf
Коммит
d2869925b5
|
@ -1449,9 +1449,11 @@ Parser::OwningExprResult Parser::ParseObjCMessageExpression() {
|
|||
// Parse receiver
|
||||
if (isTokObjCMessageIdentifierReceiver()) {
|
||||
IdentifierInfo *ReceiverName = Tok.getIdentifierInfo();
|
||||
SourceLocation NameLoc = ConsumeToken();
|
||||
return ParseObjCMessageExpressionBody(LBracLoc, NameLoc, ReceiverName,
|
||||
ExprArg(Actions));
|
||||
if (ReceiverName != Ident_super || GetLookAheadToken(1).isNot(tok::period)) {
|
||||
SourceLocation NameLoc = ConsumeToken();
|
||||
return ParseObjCMessageExpressionBody(LBracLoc, NameLoc, ReceiverName,
|
||||
ExprArg(Actions));
|
||||
}
|
||||
}
|
||||
|
||||
OwningExprResult Res(ParseExpression());
|
||||
|
|
|
@ -0,0 +1,21 @@
|
|||
// RUN: clang-cc -fsyntax-only -verify %s
|
||||
|
||||
@interface SStoreNodeInfo
|
||||
|
||||
@property(nonatomic,readonly,retain) id descriptionShort;
|
||||
|
||||
- (id)stringByAppendingFormat:(int)format, ... ;
|
||||
|
||||
@end
|
||||
|
||||
@interface SStoreNodeInfo_iDisk : SStoreNodeInfo
|
||||
{
|
||||
@private
|
||||
id _etag;
|
||||
}
|
||||
@end
|
||||
|
||||
@implementation SStoreNodeInfo_iDisk
|
||||
- (id) X { return [super.descriptionShort stringByAppendingFormat:1, _etag]; }
|
||||
|
||||
@end
|
Загрузка…
Ссылка в новой задаче