diff options
-rw-r--r-- | clang/lib/ARCMigrate/ObjCMT.cpp | 4 | ||||
-rw-r--r-- | clang/test/ARCMT/objcmt-property-dot-syntax.m | 21 | ||||
-rw-r--r-- | clang/test/ARCMT/objcmt-property-dot-syntax.m.result | 21 |
3 files changed, 46 insertions, 0 deletions
diff --git a/clang/lib/ARCMigrate/ObjCMT.cpp b/clang/lib/ARCMigrate/ObjCMT.cpp index 48a4931c207..59feea11e13 100644 --- a/clang/lib/ARCMigrate/ObjCMT.cpp +++ b/clang/lib/ARCMigrate/ObjCMT.cpp @@ -309,6 +309,10 @@ namespace { BegLoc = PP.getLocForEndOfToken(BegLoc); SourceLocation EndLoc = RHS->getLocStart(); EndLoc = EndLoc.getLocWithOffset(-1); + const char *colon = PP.getSourceManager().getCharacterData(EndLoc); + // Add a space after '=' if there is no space between RHS and '=' + if (colon && colon[0] == ':') + PropertyDotString += " "; SourceRange Range(BegLoc, EndLoc); commit.replace(Range, PropertyDotString); // remove '[' ']' diff --git a/clang/test/ARCMT/objcmt-property-dot-syntax.m b/clang/test/ARCMT/objcmt-property-dot-syntax.m index f1038a844b4..f1b92555507 100644 --- a/clang/test/ARCMT/objcmt-property-dot-syntax.m +++ b/clang/test/ARCMT/objcmt-property-dot-syntax.m @@ -90,3 +90,24 @@ id testRdar19038838(Rdar19038838 *obj) { } @end +// rdar://19140114 +int NSOnState; +int ArrNSOnState[4]; +@interface rdar19140114 : NSObject +{ + rdar19140114* menuItem; +} +@property int state; +@end + +@implementation rdar19140114 +- (void) Meth { + [menuItem setState:NSOnState]; + [menuItem setState :NSOnState]; + [menuItem setState :ArrNSOnState[NSOnState]]; + [menuItem setState : NSOnState]; + [menuItem setState: NSOnState]; + [menuItem setState: NSOnState]; + [menuItem setState : NSOnState]; +} +@end diff --git a/clang/test/ARCMT/objcmt-property-dot-syntax.m.result b/clang/test/ARCMT/objcmt-property-dot-syntax.m.result index b7561e526d0..70c7e7ab54e 100644 --- a/clang/test/ARCMT/objcmt-property-dot-syntax.m.result +++ b/clang/test/ARCMT/objcmt-property-dot-syntax.m.result @@ -90,3 +90,24 @@ id testRdar19038838(Rdar19038838 *obj) { } @end +// rdar://19140114 +int NSOnState; +int ArrNSOnState[4]; +@interface rdar19140114 : NSObject +{ + rdar19140114* menuItem; +} +@property int state; +@end + +@implementation rdar19140114 +- (void) Meth { + menuItem.state = NSOnState; + menuItem.state = NSOnState; + menuItem.state = ArrNSOnState[NSOnState]; + menuItem.state = NSOnState; + menuItem.state = NSOnState; + menuItem.state = NSOnState; + menuItem.state = NSOnState; +} +@end |