|
clang 22.0.0git
|
Keeps track of the various options that can be enabled, which controls the dialect of C or C++ that is accepted. More...
#include "clang/Basic/LangOptions.h"
Public Member Functions | |
| LangOptions () | |
| bool | isCompilingModule () const |
| Are we compiling a module? | |
| bool | isCompilingModuleImplementation () const |
| Are we compiling a module implementation? | |
| bool | trackLocalOwningModule () const |
| Do we need to track the owning module for a local declaration? | |
| bool | isSignedOverflowDefined () const |
| bool | isSubscriptPointerArithmetic () const |
| bool | isCompatibleWithMSVC () const |
| bool | isCompatibleWithMSVC (MSVCMajorVersion MajorVersion) const |
| bool | isOverflowPatternExcluded (OverflowPatternExclusionKind Kind) const |
| void | resetNonModularOptions () |
| Reset all of the options that are not considered when building a module. | |
| bool | isNoBuiltinFunc (StringRef Name) const |
| Is this a libc/libm function that is no longer recognized as a builtin because a -fno-builtin-* option has been specified? | |
| bool | allowsNonTrivialObjCLifetimeQualifiers () const |
| True if any ObjC types may have non-trivial lifetime qualifiers. | |
| bool | assumeFunctionsAreConvergent () const |
| bool | threadPrivateMemoryAtomicsAreUndefined () const |
| Return true if atomicrmw operations targeting allocations in private memory are undefined. | |
| VersionTuple | getOpenCLVersionTuple () const |
| Return the OpenCL C or C++ version as a VersionTuple. | |
| unsigned | getOpenCLCompatibleVersion () const |
| Return the OpenCL version that kernel language is compatible with. | |
| std::string | getOpenCLVersionString () const |
| Return the OpenCL C or C++ for OpenCL language name and version as a string. | |
| bool | requiresStrictPrototypes () const |
| Returns true if functions without prototypes or functions with an identifier list (aka K&R C functions) are not allowed. | |
| bool | implicitFunctionsAllowed () const |
| Returns true if implicit function declarations are allowed in the current language mode. | |
| bool | hasAtExit () const |
| Returns true if the language supports calling the 'atexit' function. | |
| bool | isImplicitIntRequired () const |
| Returns true if implicit int is part of the language requirements. | |
| bool | isImplicitIntAllowed () const |
| Returns true if implicit int is supported at all. | |
| bool | hasSignReturnAddress () const |
| Check if return address signing is enabled. | |
| bool | isSignReturnAddressWithAKey () const |
| Check if return address signing uses AKey. | |
| bool | isSignReturnAddressScopeAll () const |
| Check if leaf functions are also signed. | |
| bool | isSYCL () const |
| bool | hasDefaultVisibilityExportMapping () const |
| bool | isExplicitDefaultVisibilityExportMapping () const |
| bool | isAllDefaultVisibilityExportMapping () const |
| bool | hasGlobalAllocationFunctionVisibility () const |
| bool | hasDefaultGlobalAllocationFunctionVisibility () const |
| bool | hasProtectedGlobalAllocationFunctionVisibility () const |
| bool | hasHiddenGlobalAllocationFunctionVisibility () const |
| bool | allowArrayReturnTypes () const |
| void | remapPathPrefix (SmallVectorImpl< char > &Path) const |
| Remap path prefix according to -fmacro-prefix-path option. | |
| RoundingMode | getDefaultRoundingMode () const |
| FPExceptionModeKind | getDefaultExceptionMode () const |
| bool | isTargetDevice () const |
| True when compiling for an offloading target device. | |
| std::optional< uint32_t > | getCLangStd () const |
| Returns the most applicable C standard-compliant language version code. | |
| std::optional< uint32_t > | getCPlusPlusLangStd () const |
| Returns the most applicable C++ standard-compliant language version code. | |
Static Public Member Functions | |
| static void | setLangDefaults (LangOptions &Opts, Language Lang, const llvm::Triple &T, std::vector< std::string > &Includes, LangStandard::Kind LangStd=LangStandard::lang_unspecified) |
| Set language defaults for the given input language and language standard in the given LangOptions object. | |
Public Attributes | |
| LangStandard::Kind | LangStd |
| The used language standard. | |
| SanitizerSet | Sanitize |
| Set of enabled sanitizers. | |
| bool | SanitizeCoverage = false |
| Is at least one coverage instrumentation type enabled. | |
| std::vector< std::string > | NoSanitizeFiles |
| Paths to files specifying which objects (files, functions, variables) should not be instrumented. | |
| std::vector< std::string > | XRayAlwaysInstrumentFiles |
| Paths to the XRay "always instrument" files specifying which objects (files, functions, variables) should be imbued with the XRay "always instrument" attribute. | |
| std::vector< std::string > | XRayNeverInstrumentFiles |
| Paths to the XRay "never instrument" files specifying which objects (files, functions, variables) should be imbued with the XRay "never instrument" attribute. | |
| std::vector< std::string > | XRayAttrListFiles |
| Paths to the XRay attribute list files, specifying which objects (files, functions, variables) should be imbued with the appropriate XRay attribute(s). | |
| std::vector< std::string > | ProfileListFiles |
| Paths to special case list files specifying which entities (files, functions) should or should not be instrumented. | |
| clang::ObjCRuntime | ObjCRuntime |
| CoreFoundationABI | CFRuntime = CoreFoundationABI::Unspecified |
| std::string | ObjCConstantStringClass |
| std::string | OverflowHandler |
| The name of the handler function to be called when -ftrapv is specified. | |
| std::string | ModuleName |
| The module currently being compiled as specified by -fmodule-name. | |
| std::string | CurrentModule |
| The name of the current module, of which the main source file is a part. | |
| std::vector< std::string > | ModuleFeatures |
| The names of any features to enable in module 'requires' decls in addition to the hard-coded list in Module.cpp and the target features. | |
| CommentOptions | CommentOpts |
| Options for parsing comments. | |
| std::vector< std::string > | NoBuiltinFuncs |
| A list of all -fno-builtin-* function names (e.g., memset). | |
| std::map< std::string, std::string, std::greater< std::string > > | MacroPrefixMap |
| A prefix map for FILE, BASE_FILE and __builtin_FILE(). | |
| std::vector< llvm::Triple > | OMPTargetTriples |
| Triples of the OpenMP targets that the host code codegen should take into account in order to generate accurate offloading descriptors. | |
| std::string | OMPHostIRFile |
| Name of the IR file that contains the result of the OpenMP target host code generation. | |
| std::string | CUID |
| The user provided compilation unit ID, if non-empty. | |
| std::optional< TargetCXXABI::Kind > | CXXABI |
| C++ ABI to compile with, if specified by the frontend through -fc++-abi=. | |
| bool | IsHeaderFile = false |
| Indicates whether the front-end is explicitly told that the input is a header file (i.e. | |
| GPUDefaultStreamKind | GPUDefaultStream |
| The default stream kind used for HIP kernel launching. | |
| unsigned | OverflowPatternExclusionMask = 0 |
| Which overflow patterns should be excluded from sanitizer instrumentation. | |
| std::vector< std::string > | OverflowPatternExclusionValues |
| std::string | RandstructSeed |
| The seed used by the randomize structure layout feature. | |
| bool | UseTargetPathSeparator = false |
| Indicates whether to use target's platform-specific file separator when FILE macro is used and when concatenating filename with directory or to use build environment environment's platform-specific file separator. | |
| bool | CheckNew = false |
| llvm::dxbc::RootSignatureVersion | HLSLRootSigVer |
| The HLSL root signature version for dxil. | |
| std::string | HLSLRootSigOverride |
| The HLSL root signature that will be used to overide the root signature used for the shader entry point. | |
| bool | NoWasmOpt = false |
| bool | AtomicRemoteMemory = false |
| Atomic code-generation options. | |
| bool | AtomicFineGrainedMemory = false |
| bool | AtomicIgnoreDenormalMode = false |
| std::optional< uint64_t > | AllocTokenMax |
| Maximum number of allocation tokens (0 = target SIZE_MAX), nullopt if none set (use target SIZE_MAX). | |
| std::optional< llvm::AllocTokenMode > | AllocTokenMode |
| The allocation token mode. | |
Keeps track of the various options that can be enabled, which controls the dialect of C or C++ that is accepted.
Definition at line 452 of file LangOptions.h.
| LangOptions::LangOptions | ( | ) |
|
inline |
Definition at line 765 of file LangOptions.h.
References clang::HLSL.
Referenced by GetFullTypeForDeclarator().
|
inline |
True if any ObjC types may have non-trivial lifetime qualifiers.
Definition at line 666 of file LangOptions.h.
|
inline |
Definition at line 670 of file LangOptions.h.
Referenced by getTrivialDefaultFunctionAttributes(), and UpdateAsmCallInst().
| std::optional< uint32_t > LangOptions::getCLangStd | ( | ) | const |
Returns the most applicable C standard-compliant language version code.
If none could be determined, returns std::nullopt.
Definition at line 275 of file LangOptions.cpp.
References clang::C11, clang::C17, clang::C23, clang::C2y, clang::C99, clang::Digraphs, clang::LangStandard::getLangStandardForKind(), clang::LangStandard::getVersion(), and clang::GNUMode.
Referenced by GetDISourceLanguageName(), and InitializeStandardPredefinedMacros().
| std::optional< uint32_t > LangOptions::getCPlusPlusLangStd | ( | ) | const |
Returns the most applicable C++ standard-compliant language version code.
If none could be determined, returns std::nullopt.
Definition at line 252 of file LangOptions.cpp.
References clang::CPlusPlus, clang::CPlusPlus11, clang::CPlusPlus14, clang::CPlusPlus17, clang::CPlusPlus20, clang::CPlusPlus23, clang::CPlusPlus26, clang::LangStandard::getLangStandardForKind(), and clang::LangStandard::getVersion().
Referenced by GetDISourceLanguageName(), and InitializeStandardPredefinedMacros().
|
inline |
Definition at line 775 of file LangOptions.h.
References clang::LangOptionsBase::FPE_Default, and clang::LangOptionsBase::FPE_Ignore.
Referenced by clang::Sema::AddKnownFunctionAttributes(), clang::targets::addVisualCDefines(), and getTrivialDefaultFunctionAttributes().
|
inline |
Definition at line 770 of file LangOptions.h.
Referenced by clang::targets::addVisualCDefines(), and clang::CodeGen::CodeGenFunction::StartFunction().
| unsigned LangOptions::getOpenCLCompatibleVersion | ( | ) | const |
Return the OpenCL version that kernel language is compatible with.
Definition at line 66 of file LangOptions.cpp.
Referenced by clang::Sema::ActOnNumericConstant(), clang::TargetInfo::adjust(), clang::OpenCLOptions::areProgramScopeVariablesSupported(), builtinIsSupported(), CheckExtVectorComponent(), ConvertDeclSpecToType(), FixupInvocation(), GetFullTypeForDeclarator(), getOpenCLKernelParameterType(), clang::SemaOpenCL::handleAccessAttr(), clang::Sema::Initialize(), clang::OpenCLOptions::OpenCLOptionInfo::isAvailableIn(), setLangDefaults(), clang::DeclSpec::SetStorageClassSpec(), and clang::TargetInfo::validateOpenCLTarget().
| std::string LangOptions::getOpenCLVersionString | ( | ) | const |
Return the OpenCL C or C++ for OpenCL language name and version as a string.
Definition at line 82 of file LangOptions.cpp.
References getOpenCLVersionTuple(), and clang::Result.
Referenced by clang::Sema::ActOnVariableDeclarator(), FixupInvocation(), and clang::SemaOpenCL::handleNoSVMAttr().
| VersionTuple LangOptions::getOpenCLVersionTuple | ( | ) | const |
Return the OpenCL C or C++ version as a VersionTuple.
Definition at line 59 of file LangOptions.cpp.
Referenced by getOpenCLVersionString(), and clang::TargetInfo::validateOpenCLTarget().
|
inline |
Returns true if the language supports calling the 'atexit' function.
Definition at line 705 of file LangOptions.h.
|
inline |
Definition at line 750 of file LangOptions.h.
References clang::LangOptionsBase::ForceDefault.
|
inline |
Definition at line 730 of file LangOptions.h.
References clang::LangOptionsBase::None.
Referenced by clang::CodeGen::CodeGenModule::shouldMapVisibilityToDLLExport().
|
inline |
Definition at line 745 of file LangOptions.h.
References clang::LangOptionsBase::Source.
|
inline |
Definition at line 760 of file LangOptions.h.
References clang::LangOptionsBase::ForceHidden.
|
inline |
Definition at line 755 of file LangOptions.h.
References clang::LangOptionsBase::ForceProtected.
|
inline |
Check if return address signing is enabled.
Definition at line 714 of file LangOptions.h.
References clang::LangOptionsBase::None.
Referenced by clang::TargetInfo::BranchProtectionInfo::BranchProtectionInfo(), clang::targets::AArch64TargetInfo::getTargetDefines(), and clang::targets::ARMTargetInfo::getTargetDefines().
|
inline |
Returns true if implicit function declarations are allowed in the current language mode.
Definition at line 700 of file LangOptions.h.
References clang::OpenCL, and requiresStrictPrototypes().
|
inline |
Definition at line 740 of file LangOptions.h.
References clang::LangOptionsBase::All.
Referenced by clang::CodeGen::CodeGenModule::shouldMapVisibilityToDLLExport().
|
inline |
Definition at line 643 of file LangOptions.h.
Referenced by clang::targets::addVisualCDefines(), clang::Sema::CheckFieldDecl(), CompareStandardConversionSequences(), clang::getKeywordStatus(), getMSManglingNumber(), handleMSConstexprAttr(), and handleMSConstexprAttr().
|
inline |
Definition at line 645 of file LangOptions.h.
|
inline |
Are we compiling a module?
Definition at line 620 of file LangOptions.h.
References clang::LangOptionsBase::CMK_None.
Referenced by isCompilingModuleImplementation(), clang::Module::isForBuilding(), clang::ASTUnit::isModuleFile(), and trackLocalOwningModule().
|
inline |
Are we compiling a module implementation?
Definition at line 625 of file LangOptions.h.
References isCompilingModule(), and ModuleName.
|
inline |
Definition at line 735 of file LangOptions.h.
References clang::LangOptionsBase::Explicit.
Referenced by clang::CodeGen::CodeGenModule::shouldMapVisibilityToDLLExport().
|
inline |
Returns true if implicit int is supported at all.
Definition at line 711 of file LangOptions.h.
References clang::C23, and clang::CPlusPlus.
Referenced by ConvertDeclSpecToType().
|
inline |
Returns true if implicit int is part of the language requirements.
Definition at line 708 of file LangOptions.h.
References clang::C99, and clang::CPlusPlus.
Referenced by ConvertDeclSpecToType().
| bool LangOptions::isNoBuiltinFunc | ( | StringRef | Name | ) | const |
Is this a libc/libm function that is no longer recognized as a builtin because a -fno-builtin-* option has been specified?
Definition at line 52 of file LangOptions.cpp.
References NoBuiltinFuncs.
Referenced by getTrivialDefaultFunctionAttributes().
|
inline |
Definition at line 649 of file LangOptions.h.
References clang::LangOptionsBase::All, clang::LangOptionsBase::None, and OverflowPatternExclusionMask.
Referenced by computeOverflowPatternExclusion(), and matchesPostDecrInWhile().
|
inline |
Definition at line 634 of file LangOptions.h.
References clang::LangOptionsBase::SOB_Defined.
Referenced by DiagnoseBadShiftValues().
|
inline |
Check if leaf functions are also signed.
Definition at line 724 of file LangOptions.h.
References clang::LangOptionsBase::All.
Referenced by clang::TargetInfo::BranchProtectionInfo::BranchProtectionInfo(), clang::targets::AArch64TargetInfo::getTargetDefines(), and clang::targets::ARMTargetInfo::getTargetDefines().
|
inline |
Check if return address signing uses AKey.
Definition at line 719 of file LangOptions.h.
References clang::LangOptionsBase::AKey.
Referenced by clang::TargetInfo::BranchProtectionInfo::BranchProtectionInfo(), and clang::targets::AArch64TargetInfo::getTargetDefines().
|
inline |
Definition at line 638 of file LangOptions.h.
References ObjCRuntime.
|
inline |
Definition at line 728 of file LangOptions.h.
Referenced by clang::checkGenericCastToPtr(), and getKeywordStatusHelper().
|
inline |
True when compiling for an offloading target device.
Definition at line 783 of file LangOptions.h.
Referenced by ConvertDeclSpecToType(), handleDeviceKernelAttr(), HandleNeonVectorTypeAttr(), clang::InitializePreprocessor(), and clang::CodeGen::CodeGenModule::shouldEmitRTTI().
| void LangOptions::remapPathPrefix | ( | SmallVectorImpl< char > & | Path | ) | const |
Remap path prefix according to -fmacro-prefix-path option.
Definition at line 76 of file LangOptions.cpp.
References MacroPrefixMap.
Referenced by clang::PredefinedExpr::ComputeName().
|
inline |
Returns true if functions without prototypes or functions with an identifier list (aka K&R C functions) are not allowed.
Definition at line 694 of file LangOptions.h.
References clang::C23, and clang::CPlusPlus.
Referenced by CreateNewFunctionDecl(), GetFullTypeForDeclarator(), and implicitFunctionsAllowed().
| void LangOptions::resetNonModularOptions | ( | ) |
Reset all of the options that are not considered when building a module.
Definition at line 26 of file LangOptions.cpp.
References CurrentModule, IsHeaderFile, NoSanitizeFiles, XRayAlwaysInstrumentFiles, and XRayNeverInstrumentFiles.
Referenced by clang::CompilerInvocation::resetNonModularOptions().
|
static |
Set language defaults for the given input language and language standard in the given LangOptions object.
| Opts | - The LangOptions object to set up. |
| Lang | - The input language. |
| T | - The target triple. |
| Includes | - If the language requires extra headers to be implicitly included, they will be appended to this list. |
| LangStd | - The input language standard. |
Definition at line 92 of file LangOptions.cpp.
References clang::Asm, clang::CUDA, clang::LangOptionsBase::FPM_Fast, clang::LangOptionsBase::FPM_FastHonorPragmas, clang::LangOptionsBase::FPM_On, clang::getDefaultLanguageStandard(), clang::LangStandard::getLangStandardForKind(), getOpenCLCompatibleVersion(), clang::LangStandard::hasDigraphs(), clang::LangStandard::hasHexFloats(), clang::LangStandard::hasLineComments(), clang::LangStandard::hasRawStringLiterals(), clang::HIP, clang::HLSL, clang::LangOptionsBase::HLSL_2015, clang::LangOptionsBase::HLSL_2016, clang::LangOptionsBase::HLSL_2017, clang::LangOptionsBase::HLSL_2018, clang::LangOptionsBase::HLSL_2021, clang::LangOptionsBase::HLSL_202x, clang::LangOptionsBase::HLSL_202y, clang::LangStandard::isC11(), clang::LangStandard::isC17(), clang::LangStandard::isC23(), clang::LangStandard::isC2y(), clang::LangStandard::isC99(), clang::LangStandard::isCPlusPlus(), clang::LangStandard::isCPlusPlus11(), clang::LangStandard::isCPlusPlus14(), clang::LangStandard::isCPlusPlus17(), clang::LangStandard::isCPlusPlus20(), clang::LangStandard::isCPlusPlus23(), clang::LangStandard::isCPlusPlus26(), clang::LangStandard::isGNUMode(), clang::LangStandard::isOpenCL(), clang::LangStandard::lang_unspecified, LangOptions(), LangStd, clang::ObjC, clang::ObjCXX, and clang::T.
|
inline |
Return true if atomicrmw operations targeting allocations in private memory are undefined.
Definition at line 676 of file LangOptions.h.
References clang::CUDA, and clang::OpenCL.
|
inline |
Do we need to track the owning module for a local declaration?
Definition at line 630 of file LangOptions.h.
References isCompilingModule().
Referenced by clang::Decl::hasLocalOwningModuleStorage().
| std::optional<uint64_t> clang::LangOptions::AllocTokenMax |
Maximum number of allocation tokens (0 = target SIZE_MAX), nullopt if none set (use target SIZE_MAX).
Definition at line 588 of file LangOptions.h.
Referenced by clang::interp::interp__builtin_infer_alloc_token().
| std::optional<llvm::AllocTokenMode> clang::LangOptions::AllocTokenMode |
The allocation token mode.
Definition at line 591 of file LangOptions.h.
Referenced by clang::interp::interp__builtin_infer_alloc_token().
Definition at line 583 of file LangOptions.h.
Definition at line 584 of file LangOptions.h.
Referenced by clang::targets::AMDGPUTargetInfo::getTargetDefines().
Atomic code-generation options.
These flags are set directly from the command-line options.
Definition at line 582 of file LangOptions.h.
| CoreFoundationABI clang::LangOptions::CFRuntime = CoreFoundationABI::Unspecified |
Definition at line 489 of file LangOptions.h.
Referenced by clang::CodeGen::CodeGenModule::GetAddrOfConstantCFString(), and clang::ASTContext::getCFConstantStringDecl().
Definition at line 567 of file LangOptions.h.
| CommentOptions clang::LangOptions::CommentOpts |
Options for parsing comments.
Definition at line 516 of file LangOptions.h.
Referenced by checkLanguageOptions().
| std::string clang::LangOptions::CUID |
The user provided compilation unit ID, if non-empty.
This is used to externalize static variables which is needed to support accessing static device variables in host code for single source offloading languages like CUDA/HIP.
Definition at line 536 of file LangOptions.h.
Referenced by clang::CodeGen::CodeGenModule::printPostfixForExternalizedDecl().
| std::string clang::LangOptions::CurrentModule |
The name of the current module, of which the main source file is a part.
If CompilingModule is set, we are compiling the interface of this module, otherwise we are compiling an implementation file of it. This starts as ModuleName in case -fmodule-name is provided and changes during compilation to reflect the current module.
Definition at line 507 of file LangOptions.h.
Referenced by clang::Sema::ActOnModuleDecl(), clang::Sema::ActOnModuleImport(), clang::FrontendAction::BeginSourceFile(), clang::DumpModuleInfoAction::ExecuteAction(), FixupInvocation(), clang::FrontendAction::getCurrentModule(), clang::Preprocessor::getModuleForLocation(), clang::Module::isForBuilding(), prepareToBuildModule(), and resetNonModularOptions().
| std::optional<TargetCXXABI::Kind> clang::LangOptions::CXXABI |
C++ ABI to compile with, if specified by the frontend through -fc++-abi=.
This overrides the default ABI used by the target.
Definition at line 540 of file LangOptions.h.
Referenced by clang::ASTContext::getCXXABIKind().
| GPUDefaultStreamKind clang::LangOptions::GPUDefaultStream |
The default stream kind used for HIP kernel launching.
Definition at line 547 of file LangOptions.h.
Referenced by InitializeStandardPredefinedMacros().
| std::string clang::LangOptions::HLSLRootSigOverride |
The HLSL root signature that will be used to overide the root signature used for the shader entry point.
Definition at line 574 of file LangOptions.h.
Referenced by clang::HLSLFrontendAction::ExecuteAction().
| llvm::dxbc::RootSignatureVersion clang::LangOptions::HLSLRootSigVer |
The HLSL root signature version for dxil.
Definition at line 570 of file LangOptions.h.
Referenced by clang::HLSLFrontendAction::ExecuteAction().
Indicates whether the front-end is explicitly told that the input is a header file (i.e.
-x c-header).
Definition at line 544 of file LangOptions.h.
Referenced by isMainFileLoc(), and resetNonModularOptions().
| LangStandard::Kind clang::LangOptions::LangStd |
The used language standard.
Definition at line 455 of file LangOptions.h.
Referenced by LangOptions(), clang::modulemap::parseModuleMap(), and setLangDefaults().
| std::map<std::string, std::string, std::greater<std::string> > clang::LangOptions::MacroPrefixMap |
A prefix map for FILE, BASE_FILE and __builtin_FILE().
Definition at line 522 of file LangOptions.h.
Referenced by remapPathPrefix().
| std::vector<std::string> clang::LangOptions::ModuleFeatures |
The names of any features to enable in module 'requires' decls in addition to the hard-coded list in Module.cpp and the target features.
This list is sorted.
Definition at line 513 of file LangOptions.h.
Referenced by checkLanguageOptions(), and hasFeature().
| std::string clang::LangOptions::ModuleName |
The module currently being compiled as specified by -fmodule-name.
Definition at line 500 of file LangOptions.h.
Referenced by clang::FrontendAction::BeginSourceFile(), FixupInvocation(), isCompilingModuleImplementation(), clang::Module::isForBuilding(), loadModuleMapForModuleBuild(), and makeCommonInvocationForModuleBuild().
| std::vector<std::string> clang::LangOptions::NoBuiltinFuncs |
A list of all -fno-builtin-* function names (e.g., memset).
Definition at line 519 of file LangOptions.h.
Referenced by addNoBuiltinAttributes(), clang::Builtin::Context::initializeBuiltins(), and isNoBuiltinFunc().
| std::vector<std::string> clang::LangOptions::NoSanitizeFiles |
Paths to files specifying which objects (files, functions, variables) should not be instrumented.
Definition at line 464 of file LangOptions.h.
Referenced by addSanitizers(), and resetNonModularOptions().
Definition at line 578 of file LangOptions.h.
| std::string clang::LangOptions::ObjCConstantStringClass |
Definition at line 491 of file LangOptions.h.
| clang::ObjCRuntime clang::LangOptions::ObjCRuntime |
Definition at line 487 of file LangOptions.h.
Referenced by checkArithmeticOnObjCPointer(), checkLanguageOptions(), CheckObjCTraitOperandConstraints(), CheckProtocolMethodDefs(), clang::CodeGen::CreateGNUObjCRuntime(), DiagnoseUnimplementedAccessor(), EncodeBitField(), getObjCPersonality(), getObjCPersonality(), getObjCXXPersonality(), getObjCXXPersonality(), hasUnwindExceptions(), clang::SemaObjC::ImplMethodsVsClassMethods(), InitializePredefinedMacros(), isSubscriptPointerArithmetic(), setARCRuntimeFunctionLinkage(), tryEmitSpecializedAllocInit(), tryGenerateSpecializedMessageSend(), and UseOptimizedSetter().
| std::string clang::LangOptions::OMPHostIRFile |
Name of the IR file that contains the result of the OpenMP target host code generation.
Definition at line 530 of file LangOptions.h.
| std::vector<llvm::Triple> clang::LangOptions::OMPTargetTriples |
Triples of the OpenMP targets that the host code codegen should take into account in order to generate accurate offloading descriptors.
Definition at line 526 of file LangOptions.h.
Referenced by emitCommonOMPTargetDirective().
| std::string clang::LangOptions::OverflowHandler |
The name of the handler function to be called when -ftrapv is specified.
If none is specified, abort (GCC-compatible behaviour).
Definition at line 497 of file LangOptions.h.
| unsigned clang::LangOptions::OverflowPatternExclusionMask = 0 |
Which overflow patterns should be excluded from sanitizer instrumentation.
Definition at line 550 of file LangOptions.h.
Referenced by isOverflowPatternExcluded().
| std::vector<std::string> clang::LangOptions::OverflowPatternExclusionValues |
Definition at line 552 of file LangOptions.h.
| std::vector<std::string> clang::LangOptions::ProfileListFiles |
Paths to special case list files specifying which entities (files, functions) should or should not be instrumented.
Definition at line 485 of file LangOptions.h.
| std::string clang::LangOptions::RandstructSeed |
The seed used by the randomize structure layout feature.
Definition at line 555 of file LangOptions.h.
| SanitizerSet clang::LangOptions::Sanitize |
Set of enabled sanitizers.
Definition at line 458 of file LangOptions.h.
Referenced by addKCFIPass(), addSanitizers(), checkLanguageOptions(), clang::targets::getAppleMachODefines(), clang::CompilerInvocation::getModuleHash(), InitializePredefinedMacros(), and shouldEmitLifetimeMarkers().
Is at least one coverage instrumentation type enabled.
Definition at line 460 of file LangOptions.h.
Referenced by FixupInvocation().
Indicates whether to use target's platform-specific file separator when FILE macro is used and when concatenating filename with directory or to use build environment environment's platform-specific file separator.
The plaform-specific path separator is the backslash() for Windows and forward slash (/) elsewhere.
Definition at line 563 of file LangOptions.h.
| std::vector<std::string> clang::LangOptions::XRayAlwaysInstrumentFiles |
Paths to the XRay "always instrument" files specifying which objects (files, functions, variables) should be imbued with the XRay "always instrument" attribute.
WARNING: This is a deprecated field and will go away in the future.
Definition at line 470 of file LangOptions.h.
Referenced by resetNonModularOptions().
| std::vector<std::string> clang::LangOptions::XRayAttrListFiles |
Paths to the XRay attribute list files, specifying which objects (files, functions, variables) should be imbued with the appropriate XRay attribute(s).
Definition at line 481 of file LangOptions.h.
| std::vector<std::string> clang::LangOptions::XRayNeverInstrumentFiles |
Paths to the XRay "never instrument" files specifying which objects (files, functions, variables) should be imbued with the XRay "never instrument" attribute.
WARNING: This is a deprecated field and will go away in the future.
Definition at line 476 of file LangOptions.h.
Referenced by resetNonModularOptions().