clang 22.0.0git
FrontendActions.cpp File Reference
#include "clang/Frontend/FrontendActions.h"
#include "clang/AST/ASTConsumer.h"
#include "clang/AST/Decl.h"
#include "clang/Basic/FileManager.h"
#include "clang/Basic/LangStandard.h"
#include "clang/Basic/Module.h"
#include "clang/Basic/TargetInfo.h"
#include "clang/Frontend/ASTConsumers.h"
#include "clang/Frontend/CompilerInstance.h"
#include "clang/Frontend/FrontendDiagnostic.h"
#include "clang/Frontend/MultiplexConsumer.h"
#include "clang/Frontend/Utils.h"
#include "clang/Lex/DependencyDirectivesScanner.h"
#include "clang/Lex/HeaderSearch.h"
#include "clang/Lex/Preprocessor.h"
#include "clang/Lex/PreprocessorOptions.h"
#include "clang/Parse/ParseHLSLRootSignature.h"
#include "clang/Sema/TemplateInstCallback.h"
#include "clang/Serialization/ASTReader.h"
#include "clang/Serialization/ASTWriter.h"
#include "clang/Serialization/ModuleFile.h"
#include "llvm/Config/llvm-config.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/FileSystem.h"
#include "llvm/Support/MemoryBuffer.h"
#include "llvm/Support/YAMLTraits.h"
#include "llvm/Support/raw_ostream.h"
#include <memory>
#include <optional>
#include <system_error>
#include "clang/Basic/LangOptions.def"
#include "clang/Basic/DiagnosticOptions.def"
#include "clang/Basic/Features.def"

Go to the source code of this file.

Classes

struct  llvm::yaml::MappingTraits< TemplightEntry >
class  InjectRootSignatureCallback

Namespaces

namespace  llvm
 Diagnostic wrappers for TextAPI types for error reporting.
namespace  llvm::yaml

Macros

#define DUMP_BOOLEAN(Value, Text)
#define LANGOPT(Name, Bits, Default, Compatibility, Description)
#define ENUM_LANGOPT(Name, Type, Bits, Default, Compatibility, Description)
#define VALUE_LANGOPT(Name, Bits, Default, Compatibility, Description)
#define DIAGOPT(Name, Bits, Default)
#define ENUM_DIAGOPT(Name, Type, Bits, Default)
#define VALUE_DIAGOPT(Name, Bits, Default)
#define FEATURE(Name, Predicate)
#define EXTENSION(Name, Predicate)

Functions

static StringRef ModuleKindName (Module::ModuleKind MK)

Macro Definition Documentation

◆ DIAGOPT

#define DIAGOPT ( Name,
Bits,
Default )
Value:
DUMP_BOOLEAN(DiagOpts.Name, #Name);
#define DUMP_BOOLEAN(Value, Text)

◆ DUMP_BOOLEAN

#define DUMP_BOOLEAN ( Value,
Text )
Value:
Out.indent(4) << Text << ": " << (Value? "Yes" : "No") << "\n"

Definition at line 626 of file FrontendActions.cpp.

◆ ENUM_DIAGOPT

#define ENUM_DIAGOPT ( Name,
Type,
Bits,
Default )
Value:
Out.indent(4) << #Name << ": " << DiagOpts.get##Name() << "\n";

◆ ENUM_LANGOPT

#define ENUM_LANGOPT ( Name,
Type,
Bits,
Default,
Compatibility,
Description )
Value:
if constexpr (CK::Compatibility != CK::Benign) \
Out.indent(4) << Description << ": " \
<< static_cast<unsigned>(LangOpts.get##Name()) << "\n";

◆ EXTENSION

#define EXTENSION ( Name,
Predicate )
Value:
("\t{\"" #Name "\" : " + llvm::Twine(Predicate ? "true" : "false") + "},\n") \
.toVector(Str);

◆ FEATURE

#define FEATURE ( Name,
Predicate )
Value:
("\t{\"" #Name "\" : " + llvm::Twine(Predicate ? "true" : "false") + "},\n") \
.toVector(Str);

◆ LANGOPT

#define LANGOPT ( Name,
Bits,
Default,
Compatibility,
Description )
Value:
if constexpr (CK::Compatibility != CK::Benign) \
DUMP_BOOLEAN(LangOpts.Name, Description);

◆ VALUE_DIAGOPT

#define VALUE_DIAGOPT ( Name,
Bits,
Default )
Value:
Out.indent(4) << #Name << ": " << DiagOpts.Name << "\n";

◆ VALUE_LANGOPT

#define VALUE_LANGOPT ( Name,
Bits,
Default,
Compatibility,
Description )
Value:
if constexpr (CK::Compatibility != CK::Benign) \
Out.indent(4) << Description << ": " << LangOpts.Name << "\n";

Function Documentation

◆ ModuleKindName()