clang 19.0.0git
Classes | Namespaces | Macros | Functions
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/Sema/TemplateInstCallback.h"
#include "clang/Serialization/ASTReader.h"
#include "clang/Serialization/ASTWriter.h"
#include "clang/Serialization/ModuleFile.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/FileSystem.h"
#include "llvm/Support/MemoryBuffer.h"
#include "llvm/Support/Path.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 >
 

Namespaces

namespace  llvm
 YAML serialization mapping.
 
namespace  llvm::yaml
 

Macros

#define DUMP_BOOLEAN(Value, Text)    Out.indent(4) << Text << ": " << (Value? "Yes" : "No") << "\n"
 
#define LANGOPT(Name, Bits, Default, Description)    DUMP_BOOLEAN(LangOpts.Name, Description);
 
#define ENUM_LANGOPT(Name, Type, Bits, Default, Description)
 
#define VALUE_LANGOPT(Name, Bits, Default, Description)    Out.indent(4) << Description << ": " << LangOpts.Name << "\n";
 
#define BENIGN_LANGOPT(Name, Bits, Default, Description)
 
#define BENIGN_ENUM_LANGOPT(Name, Type, Bits, Default, Description)
 
#define DIAGOPT(Name, Bits, Default)   DUMP_BOOLEAN(DiagOpts->Name, #Name);
 
#define ENUM_DIAGOPT(Name, Type, Bits, Default)    Out.indent(4) << #Name << ": " << DiagOpts->get##Name() << "\n";
 
#define VALUE_DIAGOPT(Name, Bits, Default)    Out.indent(4) << #Name << ": " << DiagOpts->Name << "\n";
 
#define FEATURE(Name, Predicate)
 
#define EXTENSION(Name, Predicate)
 

Functions

static StringRef ModuleKindName (Module::ModuleKind MK)
 

Macro Definition Documentation

◆ BENIGN_ENUM_LANGOPT

#define BENIGN_ENUM_LANGOPT (   Name,
  Type,
  Bits,
  Default,
  Description 
)

◆ BENIGN_LANGOPT

#define BENIGN_LANGOPT (   Name,
  Bits,
  Default,
  Description 
)

◆ DIAGOPT

#define DIAGOPT (   Name,
  Bits,
  Default 
)    DUMP_BOOLEAN(DiagOpts->Name, #Name);

◆ DUMP_BOOLEAN

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

Definition at line 600 of file FrontendActions.cpp.

◆ ENUM_DIAGOPT

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

◆ ENUM_LANGOPT

#define ENUM_LANGOPT (   Name,
  Type,
  Bits,
  Default,
  Description 
)
Value:
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,
  Description 
)     DUMP_BOOLEAN(LangOpts.Name, Description);

◆ VALUE_DIAGOPT

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

◆ VALUE_LANGOPT

#define VALUE_LANGOPT (   Name,
  Bits,
  Default,
  Description 
)     Out.indent(4) << Description << ": " << LangOpts.Name << "\n";

Function Documentation

◆ ModuleKindName()

static StringRef ModuleKindName ( Module::ModuleKind  MK)
static