summaryrefslogtreecommitdiffstats
path: root/clang/lib/Frontend/CompilerInvocation.cpp
diff options
context:
space:
mode:
authorDaniel Dunbar <daniel@zuster.org>2010-08-24 22:44:13 +0000
committerDaniel Dunbar <daniel@zuster.org>2010-08-24 22:44:13 +0000
commitd435275c59cc3aa8a9ec45d2f20eb75fa2bda0b5 (patch)
tree377e7f4929db5ae2b33cdb570dd40cf70b86598a /clang/lib/Frontend/CompilerInvocation.cpp
parent5b8967f8a25068c5bf7007ee04ac2aa03e97e735 (diff)
downloadbcm5719-llvm-d435275c59cc3aa8a9ec45d2f20eb75fa2bda0b5.tar.gz
bcm5719-llvm-d435275c59cc3aa8a9ec45d2f20eb75fa2bda0b5.zip
Frontend: Add basic -H support.
- I didn't implement the GCC "multiple include guard" detection parts, because it doesn't seem useful or obvious. llvm-svn: 111983
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
-rw-r--r--clang/lib/Frontend/CompilerInvocation.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/clang/lib/Frontend/CompilerInvocation.cpp b/clang/lib/Frontend/CompilerInvocation.cpp
index 86ce31538f3..68e2d846c52 100644
--- a/clang/lib/Frontend/CompilerInvocation.cpp
+++ b/clang/lib/Frontend/CompilerInvocation.cpp
@@ -689,6 +689,8 @@ static void PreprocessorOutputOptsToArgs(const PreprocessorOutputOptions &Opts,
else if (!Opts.ShowCPP && Opts.ShowMacros)
Res.push_back("-dM");
+ if (Opts.ShowHeaderIncludes)
+ Res.push_back("-H");
if (!Opts.ShowLineMarkers)
Res.push_back("-P");
if (Opts.ShowComments)
@@ -1456,10 +1458,11 @@ static void ParsePreprocessorOutputArgs(PreprocessorOutputOptions &Opts,
ArgList &Args) {
using namespace cc1options;
Opts.ShowCPP = !Args.hasArg(OPT_dM);
- Opts.ShowMacros = Args.hasArg(OPT_dM) || Args.hasArg(OPT_dD);
- Opts.ShowLineMarkers = !Args.hasArg(OPT_P);
Opts.ShowComments = Args.hasArg(OPT_C);
+ Opts.ShowHeaderIncludes = Args.hasArg(OPT_H);
+ Opts.ShowLineMarkers = !Args.hasArg(OPT_P);
Opts.ShowMacroComments = Args.hasArg(OPT_CC);
+ Opts.ShowMacros = Args.hasArg(OPT_dM) || Args.hasArg(OPT_dD);
}
static void ParseTargetArgs(TargetOptions &Opts, ArgList &Args) {
OpenPOWER on IntegriCloud