scanner: remove pos 0 hack which is no longer needed (#10935)
parent
f691a80145
commit
a09324faa9
|
@ -98,8 +98,8 @@ pub fn (mut b Builder) writeln(s string) {
|
|||
b << byte(`\n`)
|
||||
}
|
||||
|
||||
// buf == 'hello world'
|
||||
// last_n(5) returns 'world'
|
||||
// buf == 'hello world'
|
||||
pub fn (b &Builder) last_n(n int) string {
|
||||
if n > b.len {
|
||||
return ''
|
||||
|
@ -108,8 +108,8 @@ pub fn (b &Builder) last_n(n int) string {
|
|||
return x.bytestr()
|
||||
}
|
||||
|
||||
// buf == 'hello world'
|
||||
// after(6) returns 'world'
|
||||
// buf == 'hello world'
|
||||
pub fn (b &Builder) after(n int) string {
|
||||
if n >= b.len {
|
||||
return ''
|
||||
|
@ -133,7 +133,7 @@ pub fn (mut b Builder) str() string {
|
|||
return s
|
||||
}
|
||||
|
||||
// free - manually free the contents of the buffer
|
||||
// free is for manually freeing the contents of the buffer
|
||||
[unsafe]
|
||||
pub fn (mut b Builder) free() {
|
||||
unsafe { free(b.data) }
|
||||
|
|
|
@ -688,11 +688,6 @@ fn (mut s Scanner) text_scan() token.Token {
|
|||
s.is_inter_end = true
|
||||
s.is_inter_start = false
|
||||
}
|
||||
if s.pos == 0 && next_char == ` ` {
|
||||
// If a single letter name at the start of the file, increment
|
||||
// Otherwise the scanner would be stuck at s.pos = 0
|
||||
s.pos++
|
||||
}
|
||||
return s.new_token(.name, name, name.len)
|
||||
} else if c.is_digit() || (c == `.` && nextc.is_digit()) {
|
||||
// `123`, `.123`
|
||||
|
|
|
@ -0,0 +1,5 @@
|
|||
vlib/v/scanner/tests/position_0_err.vv:1:1: error: unused variable: `i`
|
||||
1 | i := 'hello'
|
||||
| ^
|
||||
2 | x := 3
|
||||
3 | y := 2
|
|
@ -0,0 +1,4 @@
|
|||
i := 'hello'
|
||||
x := 3
|
||||
y := 2
|
||||
println(x + y)
|
|
@ -1,5 +1,4 @@
|
|||
// TODO: @medvednikov: autofree on script mode does not work when first variable is on position 0 due to the code in `cgen.v:1115`
|
||||
v := 't'
|
||||
|
||||
s := '${v}.tmp'
|
||||
|
||||
println(s)
|
||||
|
|
Loading…
Reference in New Issue