forked from OSchip/llvm-project
Comment parsing: Simplify Lexer::skipLineStartingDecorations (NFC)
Inspection of the first character can just be handled by the loop as well, it does exactly the same thing. Dereferencing the pointer a second time shouldn't be an issue: the middle end can eliminate that second read as it's separated from the first only by a pure function call. Reviewed By: gribozavr2 Differential Revision: https://reviews.llvm.org/D116186
This commit is contained in:
parent
0b442db9f6
commit
bd0a970f53
|
@ -94,31 +94,12 @@ void Lexer::skipLineStartingDecorations() {
|
|||
if (BufferPtr == CommentEnd)
|
||||
return;
|
||||
|
||||
switch (*BufferPtr) {
|
||||
case ' ':
|
||||
case '\t':
|
||||
case '\f':
|
||||
case '\v': {
|
||||
const char *NewBufferPtr = BufferPtr;
|
||||
NewBufferPtr++;
|
||||
if (NewBufferPtr == CommentEnd)
|
||||
const char *NewBufferPtr = BufferPtr;
|
||||
while (isHorizontalWhitespace(*NewBufferPtr))
|
||||
if (++NewBufferPtr == CommentEnd)
|
||||
return;
|
||||
|
||||
char C = *NewBufferPtr;
|
||||
while (isHorizontalWhitespace(C)) {
|
||||
NewBufferPtr++;
|
||||
if (NewBufferPtr == CommentEnd)
|
||||
return;
|
||||
C = *NewBufferPtr;
|
||||
}
|
||||
if (C == '*')
|
||||
BufferPtr = NewBufferPtr + 1;
|
||||
break;
|
||||
}
|
||||
case '*':
|
||||
BufferPtr++;
|
||||
break;
|
||||
}
|
||||
if (*NewBufferPtr == '*')
|
||||
BufferPtr = NewBufferPtr + 1;
|
||||
}
|
||||
|
||||
namespace {
|
||||
|
|
Loading…
Reference in New Issue