10 #ifndef LLVM_CLANG_LIB_ARCMIGRATE_INTERNALS_H
11 #define LLVM_CLANG_LIB_ARCMIGRATE_INTERNALS_H
15 #include "llvm/ADT/ArrayRef.h"
16 #include "llvm/ADT/Optional.h"
26 typedef std::list<StoredDiagnostic> ListTy;
70 StringRef replacementText);
79 unsigned IDs[] = { ID1, ID2 };
84 unsigned IDs[] = { ID1, ID2, ID3 };
93 unsigned IDs[] = { ID1, ID2 };
160 : Ctx(Ctx), OrigGCMode(OrigGCMode),
MigOptions(),
162 ARCMTMacroLocs(ARCMTMacroLocs) { }
174 return "__IMPL_ARCMT_REMOVED_EXPR__";
unsigned NoFinalizeRemoval
void reportDiagnostics(DiagnosticsEngine &diags) const
MigrationPass(ASTContext &Ctx, LangOptions::GCMode OrigGCMode, Sema &sema, TransformActions &TA, const CapturedDiagList &capturedDiags, std::vector< SourceLocation > &ARCMTMacroLocs)
ListTy::const_iterator iterator
static StringRef getARCMTMacroName()
Represents a diagnostic in a form that can be retained until its corresponding source manager is dest...
void push_back(const StoredDiagnostic &diag)
const CapturedDiagList & getDiags() const
bool isGCMigration() const
void setNoFinalizeRemoval(bool val)
Holds long-lived AST nodes (such as types and decls) that can be referred to throughout the semantic ...
Keeps track of the various options that can be enabled, which controls the dialect of C or C++ that i...
bool clearDiagnostic(ArrayRef< unsigned > IDs, SourceRange range)
bool hasUnrecoverableErrorOccurred() const
Determine whether any kind of unrecoverable error has occurred.
Concrete class used by the front-end to report problems and issues.
bool hasDiagnostic(ArrayRef< unsigned > IDs, SourceRange range) const
Sema - This implements semantic analysis and AST building for C.
A little helper class used to produce diagnostics.
Represents a character-granular source range.
bool CFBridgingFunctionsDefined()
void writeARCDiagsToPlist(const std::string &outPath, ArrayRef< StoredDiagnostic > diags, SourceManager &SM, const LangOptions &LangOpts)
Encodes a location in the source.
bool noFinalizeRemoval() const
const CapturedDiagList & CapturedDiags
Transaction(TransformActions &TA)
Defines the Diagnostic-related interfaces.
std::vector< SourceLocation > & ARCMTMacroLocs
Optional< bool > EnableCFBridgeFns
MigratorOptions MigOptions
LangOptions::GCMode OrigGCMode
A trivial tuple used to represent a source range.
This class handles loading and caching of source files into memory.
Engages in a tight little dance with the lexer to efficiently preprocess tokens.