diff options
Diffstat (limited to 'lib/Basic')
-rw-r--r-- | lib/Basic/IdentifierTable.cpp | 4 | ||||
-rw-r--r-- | lib/Basic/Targets.cpp | 7 |
2 files changed, 3 insertions, 8 deletions
diff --git a/lib/Basic/IdentifierTable.cpp b/lib/Basic/IdentifierTable.cpp index 94ca1789f3..f5b417c72c 100644 --- a/lib/Basic/IdentifierTable.cpp +++ b/lib/Basic/IdentifierTable.cpp @@ -125,7 +125,9 @@ static void AddKeyword(StringRef Keyword, else if (LangOpts.OpenCL && (Flags & KEYOPENCL)) AddResult = 2; else if (!LangOpts.CPlusPlus && (Flags & KEYNOCXX)) AddResult = 2; else if (LangOpts.C1X && (Flags & KEYC1X)) AddResult = 2; - else if (LangOpts.ObjCAutoRefCount && (Flags & KEYARC)) AddResult = 2; + // We treat bridge casts as objective-C keywords so we can warn on them + // in non-arc mode. + else if (LangOpts.ObjC2 && (Flags & KEYARC)) AddResult = 2; else if (LangOpts.CPlusPlus && (Flags & KEYCXX0X)) AddResult = 3; // Don't add this keyword if disabled in this language. diff --git a/lib/Basic/Targets.cpp b/lib/Basic/Targets.cpp index 07e61d80ba..34ae1d3b16 100644 --- a/lib/Basic/Targets.cpp +++ b/lib/Basic/Targets.cpp @@ -99,13 +99,6 @@ static void getDarwinDefines(MacroBuilder &Builder, const LangOptions &Opts, // allow this in C, since one might have block pointers in structs that // are used in pure C code and in Objective-C ARC. Builder.defineMacro("__unsafe_unretained", ""); - - // The Objective-C bridged cast keywords are defined to nothing in non-ARC - // mode; then they become normal, C-style casts. - Builder.defineMacro("__bridge", ""); - Builder.defineMacro("__bridge_transfer", ""); - Builder.defineMacro("__bridge_retained", ""); - Builder.defineMacro("__bridge_retain", ""); } if (Opts.Static) |