15 #ifndef LLVM_CLANG_BASIC_LANGOPTIONS_H
16 #define LLVM_CLANG_BASIC_LANGOPTIONS_H
33 #define LANGOPT(Name, Bits, Default, Description) unsigned Name : Bits;
34 #define ENUM_LANGOPT(Name, Type, Bits, Default, Description)
35 #include "clang/Basic/LangOptions.def"
40 #define LANGOPT(Name, Bits, Default, Description)
41 #define ENUM_LANGOPT(Name, Type, Bits, Default, Description) \
43 #include "clang/Basic/LangOptions.def"
132 #define LANGOPT(Name, Bits, Default, Description)
133 #define ENUM_LANGOPT(Name, Type, Bits, Default, Description) \
134 Type get##Name() const { return static_cast<Type>(Name); } \
135 void set##Name(Type Value) { Name = static_cast<unsigned>(Value); }
136 #include "clang/Basic/LangOptions.def"
144 !ObjCSubscriptingLegacyRuntime;
148 return MSCompatibilityVersion >= MajorVersion * 10000000U;
bool isSignedOverflowDefined() const
FPOptions(const LangOptions &LangOpts)
SanitizerSet Sanitize
Set of enabled sanitizers.
The translation unit is a prefix to a translation unit, and is not complete.
Defines types useful for describing an Objective-C runtime.
Floating point control options.
Defines the clang::SanitizerKind enum.
class LLVM_ALIGNAS(8) DependentTemplateSpecializationType const IdentifierInfo * Name
Represents a template specialization type whose template cannot be resolved, e.g. ...
bool isNoBuiltinFunc(const char *Name) const
Is this a libc/libm function that is no longer recognized as a builtin because a -fno-builtin-* optio...
void resetNonModularOptions()
Reset all of the options that are not considered when building a module.
Keeps track of the various options that can be enabled, which controls the dialect of C or C++ that i...
Forward-declares and imports various common LLVM datatypes that clang wants to use unqualified...
Visibility
Describes the different kinds of visibility that a declaration may have.
Defines the clang::Visibility enumeration and various utility functions.
std::vector< std::string > ModuleFeatures
The names of any features to enable in module 'requires' decls in addition to the hard-coded list in ...
std::string CurrentModule
The name of the current module, of which the main source file is a part.
CommentOptions CommentOpts
Options for parsing comments.
std::string OMPHostIRFile
Name of the IR file that contains the result of the OpenMP target host code generation.
clang::ObjCRuntime ObjCRuntime
PragmaMSPointersToMembersKind
std::string OverflowHandler
The name of the handler function to be called when -ftrapv is specified.
The basic abstraction for the target Objective-C runtime.
std::vector< llvm::Triple > OMPTargetTriples
Triples of the OpenMP targets that the host code codegen should take into account in order to generat...
bool isSubscriptPointerArithmetic() const
Is subscripting pointer arithmetic?
bool isCompatibleWithMSVC(MSVCMajorVersion MajorVersion) const
std::vector< std::string > NoBuiltinFuncs
A list of all -fno-builtin-* function names (e.g., memset).
bool isSubscriptPointerArithmetic() const
TranslationUnitKind
Describes the kind of translation unit being processed.
The translation unit is a complete translation unit.
std::vector< std::string > SanitizerBlacklistFiles
Paths to blacklist files specifying which objects (files, functions, variables) should not be instrum...
Bitfields of LangOptions, split out from LangOptions in order to ensure that this large collection of...
std::string ObjCConstantStringClass
clang::Visibility Visibility
The translation unit is a module.