class FrontendOptions

Declaration

class FrontendOptions { /* full declaration omitted */ };

Description

FrontendOptions - Options for controlling the behavior of the frontend.

Declared at: clang/include/clang/Frontend/FrontendOptions.h:268

Member Variables

public unsigned int DisableFree
Disable memory freeing on exit.
public unsigned int RelocatablePCH
When generating PCH files, instruct the AST writer to create relocatable PCH files.
public unsigned int ShowHelp
Show the -help text.
public unsigned int ShowStats
Show frontend performance metrics and statistics.
public unsigned int PrintSupportedCPUs
print the supported cpus for the current target
public unsigned int TimeTrace
Output time trace profile.
public unsigned int ShowVersion
Show the -version text.
public unsigned int FixWhatYouCan
Apply fixes even if there are unfixable errors.
public unsigned int FixOnlyWarnings
Apply fixes only for warnings.
public unsigned int FixAndRecompile
Apply fixes and recompile.
public unsigned int FixToTemporaries
Apply fixes to temporary files.
public unsigned int ARCMTMigrateEmitARCErrors
Emit ARC errors even if the migrator can fix them.
public unsigned int SkipFunctionBodies
Skip over function bodies to speed up parsing in cases you do not need them (e.g. with code completion).
public unsigned int UseGlobalModuleIndex
Whether we can use the global module index if available.
public unsigned int GenerateGlobalModuleIndex
Whether we can generate the global module index if needed.
public unsigned int ASTDumpDecls
Whether we include declaration dumps in AST dumps.
public unsigned int ASTDumpAll
Whether we deserialize all decls when forming AST dumps.
public unsigned int ASTDumpLookups
Whether we include lookup table dumps in AST dumps.
public unsigned int ASTDumpDeclTypes
Whether we include declaration type dumps in AST dumps.
public unsigned int BuildingImplicitModule
Whether we are performing an implicit module build.
public unsigned int BuildingImplicitModuleUsesLock
Whether to use a filesystem lock when building implicit modules.
public unsigned int ModulesEmbedAllFiles
Whether we should embed all used files into the PCM file.
public unsigned int IncludeTimestamps
Whether timestamps should be written to the produced PCH file.
public unsigned int UseTemporary
Should a temporary file be used during compilation.
public unsigned int IsSystemModule
When using -emit-module, treat the modulemap as a system module.
public unsigned int AllowPCMWithCompilerErrors
Output (and read) PCM files regardless of compiler errors.
public clang::CodeCompleteOptions CodeCompleteOpts
public clang::ASTDumpOutputFormat ASTDumpFormat = ADOF_Default
Specifies the output format of the AST.
public enum(unnamed enum at / home / hdoc / tmp / llvm - project / clang / include / clang / Frontend / FrontendOptions.h : 355 : 3) ARCMTAction = ARCMT_None
public unsigned int ObjCMTAction = ObjCMT_None
public std::string ObjCMTAllowListPath
public std::string MTMigrateDir
public std::string ARCMTMigrateReportOut
public clang::InputKind DashX
The input kind, either specified via -x argument or deduced from the input file name.
public SmallVector<clang::FrontendInputFile, 0> Inputs
The input files and their types.
public 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).
public std::string OutputFile
The output file, if any.
public std::string FixItSuffix
If given, the new suffix for fix-it rewritten files.
public std::string ASTDumpFilter
If given, filter dumped AST Decl nodes by this substring.
public clang::ParsedSourceLocation CodeCompletionAt
If given, enable code completion at the provided location.
public frontend::ActionKind ProgramAction = frontend::ParseSyntaxOnly
The frontend action to perform.
public std::string ActionName
The name of the action to run when using a plugin action.
public std::string ProductName
The name of the product the input files belong too.
public std::map<std::string, std::vector<std::string>> PluginArgs
Args to pass to the plugins
public std::vector<std::string> AddPluginActions
The list of plugin actions to run in addition to the normal action.
public std::vector<std::string> Plugins
The list of plugins to load.
public std::vector<std::shared_ptr<ModuleFileExtension>> ModuleFileExtensions
The list of module file extensions.
public std::vector<std::string> ModuleMapFiles
The list of module map files to load before processing the input.
public std::vector<std::string> ModuleFiles
The list of additional prebuilt module files to load before processing the input.
public std::vector<std::string> ModulesEmbedFiles
The list of files to embed into the compiled module file.
public std::vector<std::string> ASTMergeFiles
The list of AST files to merge.
public 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.
public std::string OverrideRecordLayoutsFile
File name of the file that will provide record layouts (in the format produced by -fdump-record-layouts).
public std::string AuxTriple
Auxiliary triple for CUDA/HIP compilation.
public Optional<std::string> AuxTargetCPU
Auxiliary target CPU for CUDA/HIP compilation.
public Optional<std::vector<std::string>> AuxTargetFeatures
Auxiliary target features for CUDA/HIP compilation.
public std::string StatsFile
Filename to write statistics to.
public unsigned int TimeTraceGranularity
Minimum time granularity (in microseconds) traced by time profiler.
public std::string TimeTracePath
Path which stores the output files for -ftime-trace

Method Overview

Methods

FrontendOptions()

Declared at: clang/include/clang/Frontend/FrontendOptions.h:506

static clang::InputKind getInputKindForExtension(
    llvm::StringRef Extension)

Description

getInputKindForExtension - Return the appropriate input kind for a file extension. For example, "c" would return Language::C.

Declared at: clang/include/clang/Frontend/FrontendOptions.h:523

Parameters

llvm::StringRef Extension

Returns

The input kind for the extension, or Language::Unknown if the extension is not recognized.