summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFariborz Jahanian <fjahanian@apple.com>2012-02-15 22:01:47 +0000
committerFariborz Jahanian <fjahanian@apple.com>2012-02-15 22:01:47 +0000
commitff513387721be95344bd2d3123431e02570f5b72 (patch)
tree8e91ddd9961649c84f0f56e08fc53c1e9550ccb3
parent13f09b4191ff2bf60095ababc45ec97e64e88a09 (diff)
downloadbcm5719-llvm-ff513387721be95344bd2d3123431e02570f5b72.tar.gz
bcm5719-llvm-ff513387721be95344bd2d3123431e02570f5b72.zip
objective-c translator: fixes an obscure rewriting bug
which attempted to rewrite the same meta-data twice. llvm-svn: 150618
-rw-r--r--clang/lib/Rewrite/RewriteModernObjC.cpp28
1 files changed, 14 insertions, 14 deletions
diff --git a/clang/lib/Rewrite/RewriteModernObjC.cpp b/clang/lib/Rewrite/RewriteModernObjC.cpp
index 6ca8067e5ca..1851b583c39 100644
--- a/clang/lib/Rewrite/RewriteModernObjC.cpp
+++ b/clang/lib/Rewrite/RewriteModernObjC.cpp
@@ -1202,26 +1202,26 @@ void RewriteModernObjC::RewriteInterfaceDecl(ObjCInterfaceDecl *ClassDecl) {
ResultStr += "typedef struct objc_object ";
ResultStr += ClassDecl->getNameAsString();
ResultStr += ";\n#endif\n";
+ RewriteObjCInternalStruct(ClassDecl, ResultStr);
// Mark this typedef as having been generated.
ObjCForwardDecls.insert(ClassDecl->getCanonicalDecl());
- }
- RewriteObjCInternalStruct(ClassDecl, ResultStr);
-
- for (ObjCInterfaceDecl::prop_iterator I = ClassDecl->prop_begin(),
+
+ for (ObjCInterfaceDecl::prop_iterator I = ClassDecl->prop_begin(),
E = ClassDecl->prop_end(); I != E; ++I)
- RewriteProperty(*I);
- for (ObjCInterfaceDecl::instmeth_iterator
+ RewriteProperty(*I);
+ for (ObjCInterfaceDecl::instmeth_iterator
I = ClassDecl->instmeth_begin(), E = ClassDecl->instmeth_end();
- I != E; ++I)
- RewriteMethodDeclaration(*I);
- for (ObjCInterfaceDecl::classmeth_iterator
+ I != E; ++I)
+ RewriteMethodDeclaration(*I);
+ for (ObjCInterfaceDecl::classmeth_iterator
I = ClassDecl->classmeth_begin(), E = ClassDecl->classmeth_end();
- I != E; ++I)
- RewriteMethodDeclaration(*I);
+ I != E; ++I)
+ RewriteMethodDeclaration(*I);
- // Lastly, comment out the @end.
- ReplaceText(ClassDecl->getAtEndRange().getBegin(), strlen("@end"),
- "/* @end */");
+ // Lastly, comment out the @end.
+ ReplaceText(ClassDecl->getAtEndRange().getBegin(), strlen("@end"),
+ "/* @end */");
+ }
}
Stmt *RewriteModernObjC::RewritePropertyOrImplicitSetter(PseudoObjectExpr *PseudoOp) {
OpenPOWER on IntegriCloud