aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChandler Carruth <chandlerc@gmail.com>2011-07-14 08:20:40 +0000
committerChandler Carruth <chandlerc@gmail.com>2011-07-14 08:20:40 +0000
commit433db06b614f26dc6829e86d6ff469e2cca7d4f9 (patch)
treefe46de17506ec5a51930b623093df6ea081a54ea
parentd0f5e443ceed37e1a72015bd109db8e5fc6206cf (diff)
Convert terminology in the Lexer from 'instantiate' and variants to
'expand'. Also update the public API it provides to the new term, and propagate that update to the various clients. No functionality changed. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135138 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--include/clang/Lex/Lexer.h16
-rw-r--r--include/clang/Lex/Preprocessor.h8
-rw-r--r--lib/ARCMigrate/TransformActions.cpp4
-rw-r--r--lib/ARCMigrate/Transforms.cpp2
-rw-r--r--lib/Lex/Lexer.cpp53
-rw-r--r--lib/Parse/ParseExpr.cpp2
6 files changed, 43 insertions, 42 deletions
diff --git a/include/clang/Lex/Lexer.h b/include/clang/Lex/Lexer.h
index 937e468034..f4297627e8 100644
--- a/include/clang/Lex/Lexer.h
+++ b/include/clang/Lex/Lexer.h
@@ -95,8 +95,8 @@ public:
/// _Pragma expansion. This has a variety of magic semantics that this method
/// sets up. It returns a new'd Lexer that must be delete'd when done.
static Lexer *Create_PragmaLexer(SourceLocation SpellingLoc,
- SourceLocation InstantiationLocStart,
- SourceLocation InstantiationLocEnd,
+ SourceLocation ExpansionLocStart,
+ SourceLocation ExpansionLocEnd,
unsigned TokLen, Preprocessor &PP);
@@ -241,8 +241,8 @@ public:
/// is not necessary to copy any data, then the returned string may
/// not point into the provided buffer.
///
- /// This method lexes at the instantiation depth of the given
- /// location and does not jump to the instantiation or spelling
+ /// This method lexes at the expansion depth of the given
+ /// location and does not jump to the expansion or spelling
/// location.
static llvm::StringRef getSpelling(SourceLocation loc,
llvm::SmallVectorImpl<char> &buffer,
@@ -295,14 +295,14 @@ public:
const LangOptions &Features);
/// \brief Returns true if the given MacroID location points at the first
- /// token of the macro instantiation.
- static bool isAtStartOfMacroInstantiation(SourceLocation loc,
+ /// token of the macro expansion.
+ static bool isAtStartOfMacroExpansion(SourceLocation loc,
const SourceManager &SM,
const LangOptions &LangOpts);
/// \brief Returns true if the given MacroID location points at the last
- /// token of the macro instantiation.
- static bool isAtEndOfMacroInstantiation(SourceLocation loc,
+ /// token of the macro expansion.
+ static bool isAtEndOfMacroExpansion(SourceLocation loc,
const SourceManager &SM,
const LangOptions &LangOpts);
diff --git a/include/clang/Lex/Preprocessor.h b/include/clang/Lex/Preprocessor.h
index e1ea37f241..a2d495a9a7 100644
--- a/include/clang/Lex/Preprocessor.h
+++ b/include/clang/Lex/Preprocessor.h
@@ -755,14 +755,14 @@ public:
/// \brief Returns true if the given MacroID location points at the first
/// token of the macro instantiation.
- bool isAtStartOfMacroInstantiation(SourceLocation loc) const {
- return Lexer::isAtStartOfMacroInstantiation(loc, SourceMgr, Features);
+ bool isAtStartOfMacroExpansion(SourceLocation loc) const {
+ return Lexer::isAtStartOfMacroExpansion(loc, SourceMgr, Features);
}
/// \brief Returns true if the given MacroID location points at the last
/// token of the macro instantiation.
- bool isAtEndOfMacroInstantiation(SourceLocation loc) const {
- return Lexer::isAtEndOfMacroInstantiation(loc, SourceMgr, Features);
+ bool isAtEndOfMacroExpansion(SourceLocation loc) const {
+ return Lexer::isAtEndOfMacroExpansion(loc, SourceMgr, Features);
}
/// DumpToken - Print the token to stderr, used for debugging.
diff --git a/lib/ARCMigrate/TransformActions.cpp b/lib/ARCMigrate/TransformActions.cpp
index 3e49942788..2e015da624 100644
--- a/lib/ARCMigrate/TransformActions.cpp
+++ b/lib/ARCMigrate/TransformActions.cpp
@@ -388,7 +388,7 @@ bool TransformActionsImpl::canInsert(SourceLocation loc) {
if (loc.isFileID())
return true;
- return PP.isAtStartOfMacroInstantiation(loc);
+ return PP.isAtStartOfMacroExpansion(loc);
}
bool TransformActionsImpl::canInsertAfterToken(SourceLocation loc) {
@@ -401,7 +401,7 @@ bool TransformActionsImpl::canInsertAfterToken(SourceLocation loc) {
if (loc.isFileID())
return true;
- return PP.isAtEndOfMacroInstantiation(loc);
+ return PP.isAtEndOfMacroExpansion(loc);
}
bool TransformActionsImpl::canRemoveRange(SourceRange range) {
diff --git a/lib/ARCMigrate/Transforms.cpp b/lib/ARCMigrate/Transforms.cpp
index 5c37b7f3f6..7a439d95e3 100644
--- a/lib/ARCMigrate/Transforms.cpp
+++ b/lib/ARCMigrate/Transforms.cpp
@@ -94,7 +94,7 @@ SourceLocation trans::findLocationAfterSemi(SourceLocation loc,
ASTContext &Ctx) {
SourceManager &SM = Ctx.getSourceManager();
if (loc.isMacroID()) {
- if (!Lexer::isAtEndOfMacroInstantiation(loc, SM, Ctx.getLangOptions()))
+ if (!Lexer::isAtEndOfMacroExpansion(loc, SM, Ctx.getLangOptions()))
return SourceLocation();
loc = SM.getInstantiationRange(loc).second;
}
diff --git a/lib/Lex/Lexer.cpp b/lib/Lex/Lexer.cpp
index aabba0aa56..a28b8f6e7b 100644
--- a/lib/Lex/Lexer.cpp
+++ b/lib/Lex/Lexer.cpp
@@ -156,7 +156,7 @@ Lexer::Lexer(FileID FID, const llvm::MemoryBuffer *FromFile,
///
/// On entrance to this routine, TokStartLoc is a macro location which has a
/// spelling loc that indicates the bytes to be lexed for the token and an
-/// instantiation location that indicates where all lexed tokens should be
+/// expansion location that indicates where all lexed tokens should be
/// "expanded from".
///
/// FIXME: It would really be nice to make _Pragma just be a wrapper around a
@@ -166,8 +166,8 @@ Lexer::Lexer(FileID FID, const llvm::MemoryBuffer *FromFile,
/// out of the critical path of the lexer!
///
Lexer *Lexer::Create_PragmaLexer(SourceLocation SpellingLoc,
- SourceLocation InstantiationLocStart,
- SourceLocation InstantiationLocEnd,
+ SourceLocation ExpansionLocStart,
+ SourceLocation ExpansionLocEnd,
unsigned TokLen, Preprocessor &PP) {
SourceManager &SM = PP.getSourceManager();
@@ -188,8 +188,8 @@ Lexer *Lexer::Create_PragmaLexer(SourceLocation SpellingLoc,
// Set the SourceLocation with the remapping information. This ensures that
// GetMappedTokenLoc will remap the tokens as they are lexed.
L->FileLoc = SM.createInstantiationLoc(SM.getLocForStartOfFile(SpellingFID),
- InstantiationLocStart,
- InstantiationLocEnd, TokLen);
+ ExpansionLocStart,
+ ExpansionLocEnd, TokLen);
// Ensure that the lexer thinks it is inside a directive, so that end \n will
// return an EOD token.
@@ -621,7 +621,7 @@ SourceLocation Lexer::AdvanceToTokenCharacter(SourceLocation TokStart,
unsigned CharNo,
const SourceManager &SM,
const LangOptions &Features) {
- // Figure out how many physical characters away the specified instantiation
+ // Figure out how many physical characters away the specified expansion
// character is. This needs to take into consideration newlines and
// trigraphs.
bool Invalid = false;
@@ -683,10 +683,10 @@ SourceLocation Lexer::getLocForEndOfToken(SourceLocation Loc, unsigned Offset,
return SourceLocation();
if (Loc.isMacroID()) {
- if (Offset > 0 || !isAtEndOfMacroInstantiation(Loc, SM, Features))
- return SourceLocation(); // Points inside the macro instantiation.
+ if (Offset > 0 || !isAtEndOfMacroExpansion(Loc, SM, Features))
+ return SourceLocation(); // Points inside the macro expansion.
- // Continue and find the location just after the macro instantiation.
+ // Continue and find the location just after the macro expansion.
Loc = SM.getInstantiationRange(Loc).second;
}
@@ -700,8 +700,8 @@ SourceLocation Lexer::getLocForEndOfToken(SourceLocation Loc, unsigned Offset,
}
/// \brief Returns true if the given MacroID location points at the first
-/// token of the macro instantiation.
-bool Lexer::isAtStartOfMacroInstantiation(SourceLocation loc,
+/// token of the macro expansion.
+bool Lexer::isAtStartOfMacroExpansion(SourceLocation loc,
const SourceManager &SM,
const LangOptions &LangOpts) {
assert(loc.isValid() && loc.isMacroID() && "Expected a valid macro loc");
@@ -712,17 +712,18 @@ bool Lexer::isAtStartOfMacroInstantiation(SourceLocation loc,
if (infoLoc.second > 0)
return false; // Does not point at the start of token.
- SourceLocation instLoc =
- SM.getSLocEntry(infoLoc.first).getInstantiation().getInstantiationLocStart();
- if (instLoc.isFileID())
- return true; // No other macro instantiations, this is the first.
+ SourceLocation expansionLoc =
+ SM.getSLocEntry(infoLoc.first)
+ .getInstantiation().getInstantiationLocStart();
+ if (expansionLoc.isFileID())
+ return true; // No other macro expansions, this is the first.
- return isAtStartOfMacroInstantiation(instLoc, SM, LangOpts);
+ return isAtStartOfMacroExpansion(expansionLoc, SM, LangOpts);
}
/// \brief Returns true if the given MacroID location points at the last
-/// token of the macro instantiation.
-bool Lexer::isAtEndOfMacroInstantiation(SourceLocation loc,
+/// token of the macro expansion.
+bool Lexer::isAtEndOfMacroExpansion(SourceLocation loc,
const SourceManager &SM,
const LangOptions &LangOpts) {
assert(loc.isValid() && loc.isMacroID() && "Expected a valid macro loc");
@@ -742,12 +743,12 @@ bool Lexer::isAtEndOfMacroInstantiation(SourceLocation loc,
if (FID == SM.getFileID(afterLoc))
return false; // Still in the same FileID, does not point to the last token.
- SourceLocation instLoc =
+ SourceLocation expansionLoc =
SM.getSLocEntry(FID).getInstantiation().getInstantiationLocEnd();
- if (instLoc.isFileID())
- return true; // No other macro instantiations.
+ if (expansionLoc.isFileID())
+ return true; // No other macro expansions.
- return isAtEndOfMacroInstantiation(instLoc, SM, LangOpts);
+ return isAtEndOfMacroExpansion(expansionLoc, SM, LangOpts);
}
//===----------------------------------------------------------------------===//
@@ -888,7 +889,7 @@ static inline bool isNumberBody(unsigned char c) {
//===----------------------------------------------------------------------===//
/// GetMappedTokenLoc - If lexing out of a 'mapped buffer', where we pretend the
-/// lexer buffer was all instantiated at a single point, perform the mapping.
+/// lexer buffer was all expanded at a single point, perform the mapping.
/// This is currently only used for _Pragma implementation, so it is the slow
/// path of the hot getSourceLocation method. Do not allow it to be inlined.
static LLVM_ATTRIBUTE_NOINLINE SourceLocation GetMappedTokenLoc(
@@ -896,14 +897,14 @@ static LLVM_ATTRIBUTE_NOINLINE SourceLocation GetMappedTokenLoc(
static SourceLocation GetMappedTokenLoc(Preprocessor &PP,
SourceLocation FileLoc,
unsigned CharNo, unsigned TokLen) {
- assert(FileLoc.isMacroID() && "Must be an instantiation");
+ assert(FileLoc.isMacroID() && "Must be a macro expansion");
// Otherwise, we're lexing "mapped tokens". This is used for things like
- // _Pragma handling. Combine the instantiation location of FileLoc with the
+ // _Pragma handling. Combine the expansion location of FileLoc with the
// spelling location.
SourceManager &SM = PP.getSourceManager();
- // Create a new SLoc which is expanded from Instantiation(FileLoc) but whose
+ // Create a new SLoc which is expanded from Expansion(FileLoc) but whose
// characters come from spelling(FileLoc)+Offset.
SourceLocation SpellingLoc = SM.getSpellingLoc(FileLoc);
SpellingLoc = SpellingLoc.getFileLocWithOffset(CharNo);
diff --git a/lib/Parse/ParseExpr.cpp b/lib/Parse/ParseExpr.cpp
index a4b275de13..fc64ae0226 100644
--- a/lib/Parse/ParseExpr.cpp
+++ b/lib/Parse/ParseExpr.cpp
@@ -310,7 +310,7 @@ Parser::ParseRHSOfBinaryExpression(ExprResult LHS, prec::Level MinPrec) {
SourceLocation FILoc = Tok.getLocation();
const char *FIText = ": ";
const SourceManager &SM = PP.getSourceManager();
- if (FILoc.isFileID() || PP.isAtStartOfMacroInstantiation(FILoc)) {
+ if (FILoc.isFileID() || PP.isAtStartOfMacroExpansion(FILoc)) {
FILoc = SM.getInstantiationLoc(FILoc);
bool IsInvalid = false;
const char *SourcePtr =