diff options
author | Steve Naroff <snaroff@apple.com> | 2007-11-09 15:20:18 +0000 |
---|---|---|
committer | Steve Naroff <snaroff@apple.com> | 2007-11-09 15:20:18 +0000 |
commit | f3473a7e48dfaaa88f58dd9304856e16754f9b1c (patch) | |
tree | d13c3d76c6b1515af49c88c4367f4227b927644b | |
parent | 5d37e32a5bfefacdd7b4d0664199d72c703d489d (diff) |
Rewrite global variable initializers.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@43947 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | Driver/RewriteTest.cpp | 12 | ||||
-rw-r--r-- | clang.xcodeproj/project.pbxproj | 3 |
2 files changed, 10 insertions, 5 deletions
diff --git a/Driver/RewriteTest.cpp b/Driver/RewriteTest.cpp index 885da01429..b74faf5b69 100644 --- a/Driver/RewriteTest.cpp +++ b/Driver/RewriteTest.cpp @@ -96,7 +96,7 @@ namespace { bool needToScanForQualifiers(QualType T); // Expression Rewriting. - Stmt *RewriteFunctionBody(Stmt *S); + Stmt *RewriteFunctionBodyOrGlobalInitializer(Stmt *S); Stmt *RewriteAtEncode(ObjCEncodeExpr *Exp); Stmt *RewriteAtSelector(ObjCSelectorExpr *Exp); Stmt *RewriteMessageExpr(ObjCMessageExpr *Exp); @@ -185,7 +185,7 @@ void RewriteTest::HandleTopLevelDecl(Decl *D) { void RewriteTest::HandleDeclInMainFile(Decl *D) { if (FunctionDecl *FD = dyn_cast<FunctionDecl>(D)) if (Stmt *Body = FD->getBody()) - FD->setBody(RewriteFunctionBody(Body)); + FD->setBody(RewriteFunctionBodyOrGlobalInitializer(Body)); if (ObjcImplementationDecl *CI = dyn_cast<ObjcImplementationDecl>(D)) ClassImplementation.push_back(CI); @@ -193,6 +193,10 @@ void RewriteTest::HandleDeclInMainFile(Decl *D) { CategoryImplementation.push_back(CI); else if (ObjcClassDecl *CD = dyn_cast<ObjcClassDecl>(D)) RewriteForwardClassDecl(CD); + else if (VarDecl *VD = dyn_cast<VarDecl>(D)) { + if (VD->getInit()) + RewriteFunctionBodyOrGlobalInitializer(VD->getInit()); + } // Nothing yet. } @@ -414,12 +418,12 @@ void RewriteTest::RewriteInterfaceDecl(ObjcInterfaceDecl *ClassDecl) { // Function Body / Expression rewriting //===----------------------------------------------------------------------===// -Stmt *RewriteTest::RewriteFunctionBody(Stmt *S) { +Stmt *RewriteTest::RewriteFunctionBodyOrGlobalInitializer(Stmt *S) { // Otherwise, just rewrite all children. for (Stmt::child_iterator CI = S->child_begin(), E = S->child_end(); CI != E; ++CI) if (*CI) { - Stmt *newStmt = RewriteFunctionBody(*CI); + Stmt *newStmt = RewriteFunctionBodyOrGlobalInitializer(*CI); if (newStmt) *CI = newStmt; } diff --git a/clang.xcodeproj/project.pbxproj b/clang.xcodeproj/project.pbxproj index d1670a4189..b9eb859d85 100644 --- a/clang.xcodeproj/project.pbxproj +++ b/clang.xcodeproj/project.pbxproj @@ -251,7 +251,7 @@ 84AF36A00CB17A3B00C820A5 /* DeclObjC.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = DeclObjC.h; path = clang/AST/DeclObjC.h; sourceTree = "<group>"; }; 84D9A8870C1A57E100AC7ABC /* AttributeList.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = AttributeList.cpp; path = Parse/AttributeList.cpp; sourceTree = "<group>"; }; 84D9A88B0C1A581300AC7ABC /* AttributeList.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = AttributeList.h; path = clang/Parse/AttributeList.h; sourceTree = "<group>"; }; - 8DD76F6C0486A84900D96B5E /* clang */ = {isa = PBXFileReference; includeInIndex = 0; lastKnownFileType = "compiled.mach-o.executable"; path = clang; sourceTree = BUILT_PRODUCTS_DIR; }; + 8DD76F6C0486A84900D96B5E /* clang */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = clang; sourceTree = BUILT_PRODUCTS_DIR; }; DE01DA480B12ADA300AC22CE /* PPCallbacks.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = PPCallbacks.h; sourceTree = "<group>"; }; DE06756B0C051CFE00EBBFD8 /* ParseExprCXX.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = ParseExprCXX.cpp; path = Parse/ParseExprCXX.cpp; sourceTree = "<group>"; }; DE06B73D0A8307640050E87E /* LangOptions.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = LangOptions.h; sourceTree = "<group>"; }; @@ -764,6 +764,7 @@ 08FB7793FE84155DC02AAC07 /* Project object */ = { isa = PBXProject; buildConfigurationList = 1DEB923508733DC60010E9CD /* Build configuration list for PBXProject "clang" */; + compatibilityVersion = "Xcode 2.4"; hasScannedForEncodings = 1; mainGroup = 08FB7794FE84155DC02AAC07 /* clang */; projectDirPath = ""; |