aboutsummaryrefslogtreecommitdiff
path: root/contrib/llvm-project/clang/include/clang/Frontend/CompilerInvocation.h
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/llvm-project/clang/include/clang/Frontend/CompilerInvocation.h')
-rw-r--r--contrib/llvm-project/clang/include/clang/Frontend/CompilerInvocation.h22
1 files changed, 18 insertions, 4 deletions
diff --git a/contrib/llvm-project/clang/include/clang/Frontend/CompilerInvocation.h b/contrib/llvm-project/clang/include/clang/Frontend/CompilerInvocation.h
index c723fc084c85..0d83a228c301 100644
--- a/contrib/llvm-project/clang/include/clang/Frontend/CompilerInvocation.h
+++ b/contrib/llvm-project/clang/include/clang/Frontend/CompilerInvocation.h
@@ -176,11 +176,12 @@ public:
/// \param Opts - The LangOptions object to set up.
/// \param IK - The input language.
/// \param T - The target triple.
- /// \param PPOpts - The PreprocessorOptions affected.
+ /// \param Includes - The affected list of included files.
/// \param LangStd - The input language standard.
- static void setLangDefaults(LangOptions &Opts, InputKind IK,
- const llvm::Triple &T, PreprocessorOptions &PPOpts,
- LangStandard::Kind LangStd = LangStandard::lang_unspecified);
+ static void
+ setLangDefaults(LangOptions &Opts, InputKind IK, const llvm::Triple &T,
+ std::vector<std::string> &Includes,
+ LangStandard::Kind LangStd = LangStandard::lang_unspecified);
/// Retrieve a module hash string that is suitable for uniquely
/// identifying the conditions under which the module was built.
@@ -246,6 +247,19 @@ private:
/// \returns - True if parsing was successful, false otherwise
bool parseSimpleArgs(const llvm::opt::ArgList &Args,
DiagnosticsEngine &Diags);
+
+ /// Parse command line options that map to LangOptions.
+ static void ParseLangArgs(LangOptions &Opts, llvm::opt::ArgList &Args,
+ InputKind IK, const llvm::Triple &T,
+ std::vector<std::string> &Includes,
+ DiagnosticsEngine &Diags);
+
+ /// Parse command line options that map to CodeGenOptions.
+ static bool ParseCodeGenArgs(CodeGenOptions &Opts, llvm::opt::ArgList &Args,
+ InputKind IK, DiagnosticsEngine &Diags,
+ const llvm::Triple &T,
+ const std::string &OutputFile,
+ const LangOptions &LangOptsRef);
};
IntrusiveRefCntPtr<llvm::vfs::FileSystem>