Lexer: Skipping whitespace on ::readWord at SOL was a mistake

This commit is contained in:
Paul Beckingham 2015-07-10 11:23:57 -04:00
parent 29486144c9
commit 45aaa530ac
2 changed files with 2 additions and 5 deletions

View file

@ -1324,11 +1324,6 @@ bool Lexer::readWord (
{
std::string::size_type eos = text.length ();
// Skip initial whitespace.
while (cursor <= eos &&
Lexer::isWhitespace(text[cursor]))
++cursor;
word = "";
int c;
while ((c = text[cursor]))

View file

@ -243,8 +243,10 @@ int main (int argc, char** argv)
cursor = 0;
t.ok (Lexer::readWord (text, cursor, word), "readWord \"one 'two' three\\ four\" --> true");
t.is (word, "one", " word '" + word + "'");
cursor++;
t.ok (Lexer::readWord (text, cursor, word), "readWord \"one 'two' three\\ four\" --> true");
t.is (word, "'two'", " word '" + word + "'");
cursor++;
t.ok (Lexer::readWord (text, cursor, word), "readWord \"one 'two' three\\ four\" --> true");
t.is (word, "three four", " word '" + word + "'");