@@ -117,7 +117,6 @@ bool tree_sitter_scala_external_scanner_scan(void *payload, TSLexer *lexer,
117
117
int prev = peekStack (stack );
118
118
int newline_count = 0 ;
119
119
int indentation_size = 0 ;
120
- LOG ("scanner was called at column: %d\n" , lexer -> get_column (lexer ));
121
120
122
121
while (iswspace (lexer -> lookahead )) {
123
122
if (lexer -> lookahead == '\n' ) {
@@ -191,18 +190,16 @@ bool tree_sitter_scala_external_scanner_scan(void *payload, TSLexer *lexer,
191
190
}
192
191
193
192
// Recover newline_count from the outdent reset
193
+ bool is_eof = lexer -> eof (lexer );
194
194
if (stack -> last_newline_count > 0 &&
195
- ((lexer -> eof ( lexer ) && stack -> last_column == -1 )
196
- || lexer -> get_column (lexer ) == stack -> last_column )) {
195
+ ((is_eof && stack -> last_column == -1 ) ||
196
+ (! is_eof && lexer -> get_column (lexer ) == stack -> last_column ) )) {
197
197
newline_count += stack -> last_newline_count ;
198
198
}
199
199
stack -> last_newline_count = 0 ;
200
200
201
201
printStack (stack , " after" );
202
202
203
- LOG (" indentation_size: %d, newline_count: %d, column: %d, indent_is_valid: %d, dedent_is_valid: %d\n" , indentation_size ,
204
- newline_count , lexer -> get_column (lexer ), valid_symbols [INDENT ], valid_symbols [OUTDENT ]);
205
-
206
203
if (valid_symbols [AUTOMATIC_SEMICOLON ] && newline_count > 0 ) {
207
204
// AUTOMATIC_SEMICOLON should not be issued in the middle of expressions
208
205
// Thus, we exit this branch when encountering comments, else/catch clauses, etc.
0 commit comments