Fix line numbers for TERMINATOR tokens.
This commit is contained in:
parent
ce2bf36aae
commit
7c77a5d3c8
|
@ -297,7 +297,6 @@
|
|||
return 0;
|
||||
}
|
||||
indent = match[0];
|
||||
this.line += count(indent, '\n');
|
||||
this.seenFor = false;
|
||||
size = indent.length - 1 - indent.lastIndexOf('\n');
|
||||
noNewlines = this.unfinished();
|
||||
|
@ -307,8 +306,10 @@
|
|||
} else {
|
||||
this.newlineToken();
|
||||
}
|
||||
this.line += count(indent, '\n');
|
||||
return indent.length;
|
||||
}
|
||||
this.line += count(indent, '\n');
|
||||
if (size > this.indent) {
|
||||
if (noNewlines) {
|
||||
this.indebt = size - this.indent;
|
||||
|
|
|
@ -258,13 +258,17 @@ exports.Lexer = class Lexer
|
|||
lineToken: ->
|
||||
return 0 unless match = MULTI_DENT.exec @chunk
|
||||
indent = match[0]
|
||||
@line += count indent, '\n'
|
||||
@seenFor = no
|
||||
size = indent.length - 1 - indent.lastIndexOf '\n'
|
||||
noNewlines = @unfinished()
|
||||
if size - @indebt is @indent
|
||||
if noNewlines then @suppressNewlines() else @newlineToken()
|
||||
# Advance @line line after the newlineToken, so the TERMINATOR shows up
|
||||
# on the right line.
|
||||
@line += count indent, '\n'
|
||||
return indent.length
|
||||
|
||||
@line += count indent, '\n'
|
||||
if size > @indent
|
||||
if noNewlines
|
||||
@indebt = size - @indent
|
||||
|
|
Loading…
Reference in New Issue