diff options
author | Daniel Dunbar <daniel@zuster.org> | 2010-02-01 21:07:25 +0000 |
---|---|---|
committer | Daniel Dunbar <daniel@zuster.org> | 2010-02-01 21:07:25 +0000 |
commit | 984eb8611d9ee46fc6351dee43609f2deed99f3c (patch) | |
tree | a49f78677beb871d51c4e0ba9a4f678c6e81ed09 /lib/Driver/Tools.cpp | |
parent | b9f709665a6fe9da5c67d0431de2e63c55dd5322 (diff) |
Driver/Frontend: Add support for -fobjc-legacy-dispatch, not yet used.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95004 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Driver/Tools.cpp')
-rw-r--r-- | lib/Driver/Tools.cpp | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/lib/Driver/Tools.cpp b/lib/Driver/Tools.cpp index 5bc8830765..88dffa98f9 100644 --- a/lib/Driver/Tools.cpp +++ b/lib/Driver/Tools.cpp @@ -1024,10 +1024,22 @@ void Clang::ConstructJob(Compilation &C, const JobAction &JA, // -fobjc-nonfragile-abi=0 is default. if (types::isObjC(InputType)) { if (Args.hasArg(options::OPT_fobjc_nonfragile_abi) || - getToolChain().IsObjCNonFragileABIDefault()) + getToolChain().IsObjCNonFragileABIDefault()) { CmdArgs.push_back("-fobjc-nonfragile-abi"); + + // -fobjc-legacy-dispatch is only relevant with the nonfragile-abi, and + // defaults to off. + if (Args.hasFlag(options::OPT_fobjc_legacy_dispatch, + options::OPT_fno_objc_legacy_dispatch, + false)) + CmdArgs.push_back("-fobjc-legacy-dispatch"); + } } + if (!Args.hasFlag(options::OPT_fassume_sane_operator_new, + options::OPT_fno_assume_sane_operator_new)) + CmdArgs.push_back("-fno-assume-sane-operator-new"); + // -fshort-wchar default varies depending on platform; only // pass if specified. if (Arg *A = Args.getLastArg(options::OPT_fshort_wchar)) { |