diff options
-rw-r--r-- | lib/Rewrite/Frontend/RewriteModernObjC.cpp | 6 | ||||
-rw-r--r-- | test/Rewriter/modern-write-bf-abi.mm | 20 |
2 files changed, 23 insertions, 3 deletions
diff --git a/lib/Rewrite/Frontend/RewriteModernObjC.cpp b/lib/Rewrite/Frontend/RewriteModernObjC.cpp index 68babb4ef0..4803bfa397 100644 --- a/lib/Rewrite/Frontend/RewriteModernObjC.cpp +++ b/lib/Rewrite/Frontend/RewriteModernObjC.cpp @@ -1043,7 +1043,7 @@ void RewriteModernObjC::RewritePropertyImplDecl(ObjCPropertyImplDecl *PID, static void RewriteOneForwardClassDecl(ObjCInterfaceDecl *ForwardDecl, std::string &typedefString) { - typedefString += "#ifndef _REWRITER_typedef_"; + typedefString += "\n#ifndef _REWRITER_typedef_"; typedefString += ForwardDecl->getNameAsString(); typedefString += "\n"; typedefString += "#define _REWRITER_typedef_"; @@ -1076,7 +1076,7 @@ void RewriteModernObjC::RewriteForwardClassDecl(DeclGroupRef D) { // as a comment. typedefString += "// @class "; typedefString += ForwardDecl->getNameAsString(); - typedefString += ";\n"; + typedefString += ";"; } RewriteOneForwardClassDecl(ForwardDecl, typedefString); } @@ -1092,7 +1092,7 @@ void RewriteModernObjC::RewriteForwardClassDecl( if (i == 0) { typedefString += "// @class "; typedefString += ForwardDecl->getNameAsString(); - typedefString += ";\n"; + typedefString += ";"; } RewriteOneForwardClassDecl(ForwardDecl, typedefString); } diff --git a/test/Rewriter/modern-write-bf-abi.mm b/test/Rewriter/modern-write-bf-abi.mm index 6b646db678..85db93924f 100644 --- a/test/Rewriter/modern-write-bf-abi.mm +++ b/test/Rewriter/modern-write-bf-abi.mm @@ -98,3 +98,23 @@ int f2(A* a) { int f3(A *a) { return a->ivar_d + a->ivar_ext2_a + a->ivar_ext_a + a->ivar_a; } + +__attribute__((objc_root_class)) @interface Base +{ + struct objc_class *isa; + int full; + int full2: 32; + int _refs: 8; + int field2: 3; + unsigned f3: 8; + short cc; + unsigned g: 16; + int r2: 8; + int r3: 8; + int r4: 2; + int r5: 8; + char c; +} +@end + +@implementation Base @end |