diff --git a/src/com/craftinginterpreters/lox/Scanner.java b/src/com/craftinginterpreters/lox/Scanner.java index 3faac96..3fc96d0 100644 --- a/src/com/craftinginterpreters/lox/Scanner.java +++ b/src/com/craftinginterpreters/lox/Scanner.java @@ -81,7 +81,14 @@ class Scanner { addToken(SEMICOLON); break; case '*': - addToken(STAR); + if (match('/') && !isAtEnd()) { + advance(); + } else if (isAtEnd()) { + break; + } + else { + addToken(STAR); + } break; case '!': addToken(match('=') ? BANG_EQUAL : BANG); @@ -98,7 +105,12 @@ class Scanner { if (match('/')) { while (peek() != '\n' && !isAtEnd()) advance(); - } else { + } + else if (match('*')) { + while (peek() != '*') + advance(); + } + else { addToken(SLASH); } break;