зеркало из https://github.com/microsoft/clang-1.git
suck the call to "getSpellingLoc" that all clients do into
the implementation of PTHManager::getSpelling. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62408 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Родитель
2b2453a7d8
Коммит
6b7b840361
|
@ -455,7 +455,6 @@ public:
|
|||
/// location in the appropriate MemoryBuffer.
|
||||
char getSpelledCharacterAt(SourceLocation SL) const {
|
||||
if (PTH) {
|
||||
SL = SourceMgr.getSpellingLoc(SL);
|
||||
const char *Data;
|
||||
if (PTH->getSpelling(SL, Data))
|
||||
return *Data;
|
||||
|
|
|
@ -311,8 +311,9 @@ unsigned PTHManager::getSpelling(FileID FID, unsigned FPos,
|
|||
}
|
||||
|
||||
unsigned PTHManager::getSpelling(SourceLocation Loc, const char *&Buffer) {
|
||||
std::pair<FileID, unsigned> LocInfo =
|
||||
PP->getSourceManager().getDecomposedFileLoc(Loc);
|
||||
SourceManager &SM = PP->getSourceManager();
|
||||
Loc = SM.getSpellingLoc(Loc);
|
||||
std::pair<FileID, unsigned> LocInfo = SM.getDecomposedFileLoc(Loc);
|
||||
return getSpelling(LocInfo.first, LocInfo.second, Buffer);
|
||||
}
|
||||
|
||||
|
|
|
@ -199,8 +199,7 @@ std::string Preprocessor::getSpelling(const Token &Tok) const {
|
|||
const char* TokStart;
|
||||
|
||||
if (PTH) {
|
||||
SourceLocation SLoc = SourceMgr.getSpellingLoc(Tok.getLocation());
|
||||
if (unsigned Len = PTH->getSpelling(SLoc, TokStart)) {
|
||||
if (unsigned Len = PTH->getSpelling(Tok.getLocation(), TokStart)) {
|
||||
assert(!Tok.needsCleaning());
|
||||
return std::string(TokStart, TokStart+Len);
|
||||
}
|
||||
|
@ -254,8 +253,7 @@ unsigned Preprocessor::getSpelling(const Token &Tok,
|
|||
if (CurPTHLexer) {
|
||||
Len = CurPTHLexer.get()->getSpelling(Tok.getLocation(), Buffer);
|
||||
} else {
|
||||
Len = PTH->getSpelling(SourceMgr.getSpellingLoc(Tok.getLocation()),
|
||||
Buffer);
|
||||
Len = PTH->getSpelling(Tok.getLocation(), Buffer);
|
||||
}
|
||||
|
||||
// Did we find a spelling? If so return its length. Otherwise fall
|
||||
|
|
Загрузка…
Ссылка в новой задаче