diff options
| author | Argyrios Kyrtzidis <akyrtzi@gmail.com> | 2016-07-15 18:11:27 +0000 |
|---|---|---|
| committer | Argyrios Kyrtzidis <akyrtzi@gmail.com> | 2016-07-15 18:11:27 +0000 |
| commit | e59b770518847c3fa83aabb0c5c96a49d274d047 (patch) | |
| tree | 466a9f84749b3ddccc78d6f493a5f567fe7b27c9 /clang/lib | |
| parent | 96a19d35aea91a6b96d039bae1d604a41ee7ad55 (diff) | |
| download | bcm5719-llvm-e59b770518847c3fa83aabb0c5c96a49d274d047.tar.gz bcm5719-llvm-e59b770518847c3fa83aabb0c5c96a49d274d047.zip | |
[objcmt] Don't add an #import of Foundation unnecessarily, if the NS_ENUM macro is already defined.
llvm-svn: 275589
Diffstat (limited to 'clang/lib')
| -rw-r--r-- | clang/lib/ARCMigrate/ObjCMT.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/clang/lib/ARCMigrate/ObjCMT.cpp b/clang/lib/ARCMigrate/ObjCMT.cpp index f29adb612c2..940a9c95f28 100644 --- a/clang/lib/ARCMigrate/ObjCMT.cpp +++ b/clang/lib/ARCMigrate/ObjCMT.cpp @@ -1737,6 +1737,11 @@ bool ObjCMigrateASTConsumer::InsertFoundation(ASTContext &Ctx, return true; if (Loc.isInvalid()) return false; + auto *nsEnumId = &Ctx.Idents.get("NS_ENUM"); + if (PP.getMacroDefinitionAtLoc(nsEnumId, Loc)) { + FoundationIncluded = true; + return true; + } edit::Commit commit(*Editor); if (Ctx.getLangOpts().Modules) commit.insert(Loc, "#ifndef NS_ENUM\n@import Foundation;\n#endif\n"); |

