From bc79816f287c087b635d04d3e96a783020d58d42 Mon Sep 17 00:00:00 2001 From: Daniel Dunbar Date: Tue, 28 Jul 2009 16:56:42 +0000 Subject: [PATCH] Switch AsmLexer::Lex to returning a reference to the current token. llvm-svn: 77328 --- llvm/tools/llvm-mc/AsmLexer.h | 4 ++-- llvm/tools/llvm-mc/AsmParser.cpp | 4 ++-- llvm/tools/llvm-mc/llvm-mc.cpp | 7 ++----- 3 files changed, 6 insertions(+), 9 deletions(-) diff --git a/llvm/tools/llvm-mc/AsmLexer.h b/llvm/tools/llvm-mc/AsmLexer.h index 3bedc6e8e77f..2918e43b6e45 100644 --- a/llvm/tools/llvm-mc/AsmLexer.h +++ b/llvm/tools/llvm-mc/AsmLexer.h @@ -110,8 +110,8 @@ public: AsmLexer(SourceMgr &SrcMgr); ~AsmLexer(); - AsmToken::TokenKind Lex() { - return CurTok = LexToken(), getKind(); + const AsmToken &Lex() { + return CurTok = LexToken(); } AsmToken::TokenKind getKind() const { return CurTok.getKind(); } diff --git a/llvm/tools/llvm-mc/AsmParser.cpp b/llvm/tools/llvm-mc/AsmParser.cpp index 602d696ac794..e4c85a791424 100644 --- a/llvm/tools/llvm-mc/AsmParser.cpp +++ b/llvm/tools/llvm-mc/AsmParser.cpp @@ -318,7 +318,7 @@ bool AsmParser::ParseStatement() { StringRef IDVal = ID.getString(); // Consume the identifier, see what is after it. - switch (Lexer.Lex()) { + switch (Lexer.Lex().getKind()) { case AsmToken::Colon: { // identifier ':' -> Label. Lexer.Lex(); @@ -609,7 +609,7 @@ bool AsmParser::ParseDirectiveSet() { StringRef Name = Lexer.getTok().getString(); - if (Lexer.Lex() != AsmToken::Comma) + if (Lexer.Lex().isNot(AsmToken::Comma)) return TokError("unexpected token in '.set'"); Lexer.Lex(); diff --git a/llvm/tools/llvm-mc/llvm-mc.cpp b/llvm/tools/llvm-mc/llvm-mc.cpp index 63cb70d5049e..a64c8a650524 100644 --- a/llvm/tools/llvm-mc/llvm-mc.cpp +++ b/llvm/tools/llvm-mc/llvm-mc.cpp @@ -83,9 +83,8 @@ static int AsLexInput(const char *ProgName) { bool Error = false; - AsmToken::TokenKind Tok = Lexer.Lex(); - while (Tok != AsmToken::Eof) { - switch (Tok) { + while (Lexer.Lex().isNot(AsmToken::Eof)) { + switch (Lexer.getKind()) { default: Lexer.PrintMessage(Lexer.getLoc(), "unknown token", "warning"); Error = true; @@ -136,8 +135,6 @@ static int AsLexInput(const char *ProgName) { case AsmToken::Star: outs() << "Star\n"; break; case AsmToken::Tilde: outs() << "Tilde\n"; break; } - - Tok = Lexer.Lex(); } return Error; -- GitLab