clang
7.0.0
|
FrontendOptions - Options for controlling the behavior of the frontend. More...
#include "clang/Frontend/FrontendOptions.h"
Public Types | |
enum | { ARCMT_None, ARCMT_Check, ARCMT_Modify, ARCMT_Migrate } |
enum | { ObjCMT_None = 0, ObjCMT_Literals = 0x1, ObjCMT_Subscripting = 0x2, ObjCMT_ReadonlyProperty = 0x4, ObjCMT_ReadwriteProperty = 0x8, ObjCMT_Property = (ObjCMT_ReadonlyProperty | ObjCMT_ReadwriteProperty), ObjCMT_Annotation = 0x10, ObjCMT_Instancetype = 0x20, ObjCMT_NsMacros = 0x40, ObjCMT_ProtocolConformance = 0x80, ObjCMT_AtomicProperty = 0x100, ObjCMT_ReturnsInnerPointerProperty = 0x200, ObjCMT_NsAtomicIOSOnlyProperty = 0x400, ObjCMT_DesignatedInitializer = 0x800, ObjCMT_PropertyDotSyntax = 0x1000, ObjCMT_MigrateDecls, ObjCMT_MigrateAll } |
Public Member Functions | |
FrontendOptions () | |
Static Public Member Functions | |
static InputKind | getInputKindForExtension (StringRef Extension) |
getInputKindForExtension - Return the appropriate input kind for a file extension. More... | |
Public Attributes | |
unsigned | DisableFree: 1 |
Disable memory freeing on exit. More... | |
unsigned | RelocatablePCH: 1 |
When generating PCH files, instruct the AST writer to create relocatable PCH files. More... | |
unsigned | ShowHelp: 1 |
Show the -help text. More... | |
unsigned | ShowStats: 1 |
Show frontend performance metrics and statistics. More... | |
unsigned | ShowTimers: 1 |
Show timers for individual actions. More... | |
unsigned | ShowVersion: 1 |
Show the -version text. More... | |
unsigned | FixWhatYouCan: 1 |
Apply fixes even if there are unfixable errors. More... | |
unsigned | FixOnlyWarnings: 1 |
Apply fixes only for warnings. More... | |
unsigned | FixAndRecompile: 1 |
Apply fixes and recompile. More... | |
unsigned | FixToTemporaries: 1 |
Apply fixes to temporary files. More... | |
unsigned | ARCMTMigrateEmitARCErrors: 1 |
Emit ARC errors even if the migrator can fix them. More... | |
unsigned | SkipFunctionBodies: 1 |
Skip over function bodies to speed up parsing in cases you do not need them (e.g. More... | |
unsigned | UseGlobalModuleIndex: 1 |
Whether we can use the global module index if available. More... | |
unsigned | GenerateGlobalModuleIndex: 1 |
Whether we can generate the global module index if needed. More... | |
unsigned | ASTDumpDecls: 1 |
Whether we include declaration dumps in AST dumps. More... | |
unsigned | ASTDumpAll: 1 |
Whether we deserialize all decls when forming AST dumps. More... | |
unsigned | ASTDumpLookups: 1 |
Whether we include lookup table dumps in AST dumps. More... | |
unsigned | BuildingImplicitModule: 1 |
Whether we are performing an implicit module build. More... | |
unsigned | ModulesEmbedAllFiles: 1 |
Whether we should embed all used files into the PCM file. More... | |
unsigned | IncludeTimestamps: 1 |
Whether timestamps should be written to the produced PCH file. More... | |
CodeCompleteOptions | CodeCompleteOpts |
enum clang::FrontendOptions:: { ... } | ARCMTAction = ARCMT_None |
unsigned | ObjCMTAction = ObjCMT_None |
std::string | ObjCMTWhiteListPath |
std::string | MTMigrateDir |
std::string | ARCMTMigrateReportOut |
std::vector< FrontendInputFile > | Inputs |
The input files and their types. More... | |
std::string | OriginalModuleMap |
When the input is a module map, the original module map file from which that map was inferred, if any (for umbrella modules). More... | |
std::string | OutputFile |
The output file, if any. More... | |
std::string | FixItSuffix |
If given, the new suffix for fix-it rewritten files. More... | |
std::string | ASTDumpFilter |
If given, filter dumped AST Decl nodes by this substring. More... | |
ParsedSourceLocation | CodeCompletionAt |
If given, enable code completion at the provided location. More... | |
frontend::ActionKind | ProgramAction = frontend::ParseSyntaxOnly |
The frontend action to perform. More... | |
std::string | ActionName |
The name of the action to run when using a plugin action. More... | |
std::unordered_map< std::string, std::vector< std::string > > | PluginArgs |
Args to pass to the plugins. More... | |
std::vector< std::string > | AddPluginActions |
The list of plugin actions to run in addition to the normal action. More... | |
std::vector< std::string > | Plugins |
The list of plugins to load. More... | |
std::vector< std::shared_ptr< ModuleFileExtension > > | ModuleFileExtensions |
The list of module file extensions. More... | |
std::vector< std::string > | ModuleMapFiles |
The list of module map files to load before processing the input. More... | |
std::vector< std::string > | ModuleFiles |
The list of additional prebuilt module files to load before processing the input. More... | |
std::vector< std::string > | ModulesEmbedFiles |
The list of files to embed into the compiled module file. More... | |
std::vector< std::string > | ASTMergeFiles |
The list of AST files to merge. More... | |
std::vector< std::string > | LLVMArgs |
A list of arguments to forward to LLVM's option processing; this should only be used for debugging and experimental features. More... | |
std::string | OverrideRecordLayoutsFile |
File name of the file that will provide record layouts (in the format produced by -fdump-record-layouts). More... | |
std::string | AuxTriple |
Auxiliary triple for CUDA compilation. More... | |
std::string | StatsFile |
Filename to write statistics to. More... | |
FrontendOptions - Options for controlling the behavior of the frontend.
Definition at line 245 of file FrontendOptions.h.
anonymous enum |
Enumerator | |
---|---|
ARCMT_None | |
ARCMT_Check | |
ARCMT_Modify | |
ARCMT_Migrate |
Definition at line 311 of file FrontendOptions.h.
anonymous enum |
Definition at line 318 of file FrontendOptions.h.
|
inline |
Definition at line 442 of file FrontendOptions.h.
|
static |
getInputKindForExtension - Return the appropriate input kind for a file extension.
For example, "c" would return InputKind::C.
Definition at line 15 of file FrontendOptions.cpp.
References clang::InputKind::Asm, clang::InputKind::C, clang::InputKind::CUDA, clang::InputKind::CXX, clang::InputKind::LLVM_IR, clang::InputKind::ObjC, clang::InputKind::ObjCXX, clang::InputKind::OpenCL, clang::InputKind::Precompiled, and clang::InputKind::Unknown.
Referenced by ParseFrontendArgs().
std::string clang::FrontendOptions::ActionName |
The name of the action to run when using a plugin action.
Definition at line 400 of file FrontendOptions.h.
Referenced by clang::CreateFrontendBaseAction(), clang::ExecuteCompilerInvocation(), and ParseFrontendArgs().
std::vector<std::string> clang::FrontendOptions::AddPluginActions |
The list of plugin actions to run in addition to the normal action.
Definition at line 406 of file FrontendOptions.h.
Referenced by clang::FrontendAction::getCurrentModule(), and ParseFrontendArgs().
enum { ... } clang::FrontendOptions::ARCMTAction |
Referenced by clang::CreateFrontendAction(), and ParseFrontendArgs().
unsigned clang::FrontendOptions::ARCMTMigrateEmitARCErrors |
Emit ARC errors even if the migrator can fix them.
Definition at line 279 of file FrontendOptions.h.
Referenced by clang::CreateFrontendAction(), and ParseFrontendArgs().
std::string clang::FrontendOptions::ARCMTMigrateReportOut |
Definition at line 375 of file FrontendOptions.h.
Referenced by clang::CreateFrontendAction(), and ParseFrontendArgs().
unsigned clang::FrontendOptions::ASTDumpAll |
Whether we deserialize all decls when forming AST dumps.
Definition at line 295 of file FrontendOptions.h.
Referenced by clang::ASTDumpAction::CreateASTConsumer(), and ParseFrontendArgs().
unsigned clang::FrontendOptions::ASTDumpDecls |
Whether we include declaration dumps in AST dumps.
Definition at line 292 of file FrontendOptions.h.
Referenced by clang::ASTDumpAction::CreateASTConsumer(), and ParseFrontendArgs().
std::string clang::FrontendOptions::ASTDumpFilter |
If given, filter dumped AST Decl nodes by this substring.
Definition at line 391 of file FrontendOptions.h.
Referenced by clang::ASTPrintAction::CreateASTConsumer(), clang::ASTDumpAction::CreateASTConsumer(), and ParseFrontendArgs().
unsigned clang::FrontendOptions::ASTDumpLookups |
Whether we include lookup table dumps in AST dumps.
Definition at line 298 of file FrontendOptions.h.
Referenced by clang::ASTDumpAction::CreateASTConsumer(), and ParseFrontendArgs().
std::vector<std::string> clang::FrontendOptions::ASTMergeFiles |
The list of AST files to merge.
Definition at line 425 of file FrontendOptions.h.
Referenced by clang::CreateFrontendAction(), and ParseFrontendArgs().
std::string clang::FrontendOptions::AuxTriple |
Auxiliary triple for CUDA compilation.
Definition at line 436 of file FrontendOptions.h.
Referenced by clang::CompilerInvocation::CreateFromArgs(), clang::CompilerInstance::ExecuteAction(), and ParseFrontendArgs().
unsigned clang::FrontendOptions::BuildingImplicitModule |
Whether we are performing an implicit module build.
Definition at line 301 of file FrontendOptions.h.
Referenced by compileModuleImpl().
CodeCompleteOptions clang::FrontendOptions::CodeCompleteOpts |
Definition at line 309 of file FrontendOptions.h.
Referenced by clang::ASTUnit::CodeComplete(), and ParseFrontendArgs().
ParsedSourceLocation clang::FrontendOptions::CodeCompletionAt |
If given, enable code completion at the provided location.
Definition at line 394 of file FrontendOptions.h.
Referenced by clang::ASTUnit::CodeComplete(), clang::CompilerInstance::createCodeCompletionConsumer(), clang::ASTFrontendAction::ExecuteAction(), and ParseFrontendArgs().
unsigned clang::FrontendOptions::DisableFree |
Disable memory freeing on exit.
Definition at line 248 of file FrontendOptions.h.
Referenced by compileModuleImpl(), clang::FrontendAction::EndSourceFile(), clang::ExecuteCompilerInvocation(), and ParseFrontendArgs().
unsigned clang::FrontendOptions::FixAndRecompile |
Apply fixes and recompile.
Definition at line 273 of file FrontendOptions.h.
Referenced by clang::CreateFrontendAction(), and ParseFrontendArgs().
std::string clang::FrontendOptions::FixItSuffix |
If given, the new suffix for fix-it rewritten files.
Definition at line 388 of file FrontendOptions.h.
Referenced by clang::FixItAction::BeginSourceFileAction(), and ParseFrontendArgs().
unsigned clang::FrontendOptions::FixOnlyWarnings |
Apply fixes only for warnings.
Definition at line 270 of file FrontendOptions.h.
Referenced by clang::FixItRecompile::BeginInvocation(), and ParseFrontendArgs().
unsigned clang::FrontendOptions::FixToTemporaries |
Apply fixes to temporary files.
Definition at line 276 of file FrontendOptions.h.
Referenced by clang::FixItRecompile::BeginInvocation(), and ParseFrontendArgs().
unsigned clang::FrontendOptions::FixWhatYouCan |
Apply fixes even if there are unfixable errors.
Definition at line 267 of file FrontendOptions.h.
Referenced by clang::FixItRecompile::BeginInvocation(), clang::FixItAction::BeginSourceFileAction(), and ParseFrontendArgs().
unsigned clang::FrontendOptions::GenerateGlobalModuleIndex |
Whether we can generate the global module index if needed.
Definition at line 289 of file FrontendOptions.h.
Referenced by compileModuleImpl(), ParseFrontendArgs(), and clang::CompilerInstance::shouldBuildGlobalModuleIndex().
unsigned clang::FrontendOptions::IncludeTimestamps |
Whether timestamps should be written to the produced PCH file.
Definition at line 307 of file FrontendOptions.h.
Referenced by ParseFrontendArgs().
std::vector<FrontendInputFile> clang::FrontendOptions::Inputs |
The input files and their types.
Definition at line 378 of file FrontendOptions.h.
Referenced by applyTransforms(), clang::FixItRecompile::BeginInvocation(), compileModuleImpl(), clang::createChainedIncludesSource(), makeStandaloneDiagnostic(), and ParseFrontendArgs().
std::vector<std::string> clang::FrontendOptions::LLVMArgs |
A list of arguments to forward to LLVM's option processing; this should only be used for debugging and experimental features.
Definition at line 429 of file FrontendOptions.h.
Referenced by clang::ExecuteCompilerInvocation(), and ParseFrontendArgs().
std::vector<std::shared_ptr<ModuleFileExtension> > clang::FrontendOptions::ModuleFileExtensions |
The list of module file extensions.
Definition at line 412 of file FrontendOptions.h.
Referenced by clang::VerifyPCHAction::ExecuteAction(), and ParseFrontendArgs().
std::vector<std::string> clang::FrontendOptions::ModuleFiles |
The list of additional prebuilt module files to load before processing the input.
Definition at line 419 of file FrontendOptions.h.
Referenced by clang::FrontendAction::BeginSourceFile(), and ParseFrontendArgs().
std::vector<std::string> clang::FrontendOptions::ModuleMapFiles |
The list of module map files to load before processing the input.
Definition at line 415 of file FrontendOptions.h.
Referenced by clang::FrontendAction::BeginSourceFile(), and ParseFrontendArgs().
unsigned clang::FrontendOptions::ModulesEmbedAllFiles |
Whether we should embed all used files into the PCM file.
Definition at line 304 of file FrontendOptions.h.
Referenced by clang::FrontendAction::BeginSourceFile(), and ParseFrontendArgs().
std::vector<std::string> clang::FrontendOptions::ModulesEmbedFiles |
The list of files to embed into the compiled module file.
Definition at line 422 of file FrontendOptions.h.
Referenced by clang::FrontendAction::BeginSourceFile(), and ParseFrontendArgs().
std::string clang::FrontendOptions::MTMigrateDir |
Definition at line 374 of file FrontendOptions.h.
Referenced by clang::CreateFrontendAction(), and ParseFrontendArgs().
unsigned clang::FrontendOptions::ObjCMTAction = ObjCMT_None |
Definition at line 371 of file FrontendOptions.h.
Referenced by clang::arcmt::MigrateSourceAction::CreateASTConsumer(), clang::CreateFrontendAction(), and ParseFrontendArgs().
std::string clang::FrontendOptions::ObjCMTWhiteListPath |
Definition at line 372 of file FrontendOptions.h.
Referenced by clang::arcmt::MigrateSourceAction::CreateASTConsumer(), and ParseFrontendArgs().
std::string clang::FrontendOptions::OriginalModuleMap |
When the input is a module map, the original module map file from which that map was inferred, if any (for umbrella modules).
Definition at line 382 of file FrontendOptions.h.
Referenced by compileModuleImpl(), and prepareToBuildModule().
std::string clang::FrontendOptions::OutputFile |
The output file, if any.
Definition at line 385 of file FrontendOptions.h.
Referenced by compileModuleImpl(), clang::ento::CreateAnalysisConsumer(), clang::arcmt::MigrateSourceAction::CreateASTConsumer(), clang::GenerateModuleAction::CreateASTConsumer(), clang::GeneratePCHAction::CreateOutputFile(), clang::DumpModuleInfoAction::ExecuteAction(), and ParseFrontendArgs().
std::string clang::FrontendOptions::OverrideRecordLayoutsFile |
File name of the file that will provide record layouts (in the format produced by -fdump-record-layouts).
Definition at line 433 of file FrontendOptions.h.
Referenced by ParseFrontendArgs().
std::unordered_map<std::string,std::vector<std::string> > clang::FrontendOptions::PluginArgs |
Args to pass to the plugins.
Definition at line 403 of file FrontendOptions.h.
Referenced by clang::CreateFrontendBaseAction(), clang::FrontendAction::getCurrentModule(), and ParseFrontendArgs().
std::vector<std::string> clang::FrontendOptions::Plugins |
The list of plugins to load.
Definition at line 409 of file FrontendOptions.h.
Referenced by clang::ExecuteCompilerInvocation(), and ParseFrontendArgs().
frontend::ActionKind clang::FrontendOptions::ProgramAction = frontend::ParseSyntaxOnly |
The frontend action to perform.
Definition at line 397 of file FrontendOptions.h.
Referenced by clang::CompilerInvocation::CreateFromArgs(), clang::CreateFrontendAction(), clang::CreateFrontendBaseAction(), clang::ExecuteCompilerInvocation(), and ParseFrontendArgs().
unsigned clang::FrontendOptions::RelocatablePCH |
When generating PCH files, instruct the AST writer to create relocatable PCH files.
Definition at line 252 of file FrontendOptions.h.
Referenced by clang::GeneratePCHAction::ComputeASTConsumerArguments(), clang::GeneratePCHAction::CreateASTConsumer(), and ParseFrontendArgs().
unsigned clang::FrontendOptions::ShowHelp |
Show the -help text.
Definition at line 255 of file FrontendOptions.h.
Referenced by clang::ExecuteCompilerInvocation(), and ParseFrontendArgs().
unsigned clang::FrontendOptions::ShowStats |
Show frontend performance metrics and statistics.
Definition at line 258 of file FrontendOptions.h.
Referenced by clang::FrontendAction::EndSourceFile(), clang::ASTFrontendAction::ExecuteAction(), and ParseFrontendArgs().
unsigned clang::FrontendOptions::ShowTimers |
Show timers for individual actions.
Definition at line 261 of file FrontendOptions.h.
Referenced by clang::CodeGenAction::CreateASTConsumer(), and ParseFrontendArgs().
unsigned clang::FrontendOptions::ShowVersion |
Show the -version text.
Definition at line 264 of file FrontendOptions.h.
Referenced by clang::ExecuteCompilerInvocation(), and ParseFrontendArgs().
unsigned clang::FrontendOptions::SkipFunctionBodies |
Skip over function bodies to speed up parsing in cases you do not need them (e.g.
with code completion).
Definition at line 283 of file FrontendOptions.h.
Referenced by clang::ASTFrontendAction::ExecuteAction(), and makeStandaloneDiagnostic().
std::string clang::FrontendOptions::StatsFile |
Filename to write statistics to.
Definition at line 439 of file FrontendOptions.h.
Referenced by ParseFrontendArgs().
unsigned clang::FrontendOptions::UseGlobalModuleIndex |
Whether we can use the global module index if available.
Definition at line 286 of file FrontendOptions.h.
Referenced by clang::CompilerInstance::createModuleManager(), clang::CompilerInstance::createPCHExternalASTSource(), and ParseFrontendArgs().