summaryrefslogtreecommitdiffstats
path: root/clang/lib
diff options
context:
space:
mode:
authorDouglas Gregor <dgregor@apple.com>2011-10-24 15:27:23 +0000
committerDouglas Gregor <dgregor@apple.com>2011-10-24 15:27:23 +0000
commit9885f6153ff7eb48ec9b7e36d73d477702290323 (patch)
treeeb95206b36d65c81f74fdbcc917e12df27de4491 /clang/lib
parentd5bcd07e5d330142ae72ed6cd40a0ac4cd72b5ff (diff)
downloadbcm5719-llvm-9885f6153ff7eb48ec9b7e36d73d477702290323.tar.gz
bcm5719-llvm-9885f6153ff7eb48ec9b7e36d73d477702290323.zip
Make -fms-compatibility imply -fms-extensions. Fixes PR11204.
llvm-svn: 142797
Diffstat (limited to 'clang/lib')
-rw-r--r--clang/lib/Frontend/CompilerInvocation.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/clang/lib/Frontend/CompilerInvocation.cpp b/clang/lib/Frontend/CompilerInvocation.cpp
index 76ceb9b0a5e..f1d98b9458e 100644
--- a/clang/lib/Frontend/CompilerInvocation.cpp
+++ b/clang/lib/Frontend/CompilerInvocation.cpp
@@ -627,6 +627,8 @@ static void LangOptsToArgs(const LangOptions &Opts,
Res.push_back("-fgnu-keywords");
if (Opts.MicrosoftExt)
Res.push_back("-fms-extensions");
+ if (Opts.MicrosoftMode)
+ Res.push_back("-fms-compatibility");
if (Opts.MSCVersion != 0)
Res.push_back("-fmsc-version=" + llvm::utostr(Opts.MSCVersion));
if (Opts.Borland)
@@ -1697,7 +1699,8 @@ static void ParseLangArgs(LangOptions &Opts, ArgList &Args, InputKind IK,
OPT_fno_dollars_in_identifiers,
Opts.DollarIdents);
Opts.PascalStrings = Args.hasArg(OPT_fpascal_strings);
- Opts.MicrosoftExt = Args.hasArg(OPT_fms_extensions);
+ Opts.MicrosoftExt
+ = Args.hasArg(OPT_fms_extensions) || Args.hasArg(OPT_fms_compatibility);
Opts.MicrosoftMode = Args.hasArg(OPT_fms_compatibility);
Opts.MSCVersion = Args.getLastArgIntValue(OPT_fmsc_version, 0, Diags);
Opts.Borland = Args.hasArg(OPT_fborland_extensions);
OpenPOWER on IntegriCloud