cgen: fix string range index in for mut var in (#13076)
parent
5bc72c9c01
commit
c9d8fecc75
|
@ -65,6 +65,9 @@ fn (mut g Gen) range_expr(node ast.IndexExpr, range ast.RangeExpr) {
|
|||
} else {
|
||||
g.write('string_substr(')
|
||||
}
|
||||
if node.left_type.is_ptr() {
|
||||
g.write('*')
|
||||
}
|
||||
g.expr(node.left)
|
||||
} else if sym.kind == .array {
|
||||
if node.is_gated {
|
||||
|
|
|
@ -0,0 +1,25 @@
|
|||
module main
|
||||
|
||||
[heap]
|
||||
pub struct Grid {
|
||||
pub mut:
|
||||
header []string
|
||||
}
|
||||
|
||||
fn test_string_index_in_for_mut_in() {
|
||||
h := ['yore', 'yaya']
|
||||
|
||||
mut grid := Grid{
|
||||
header: h
|
||||
}
|
||||
wrap_text(mut grid)
|
||||
}
|
||||
|
||||
fn wrap_text(mut gv Grid) {
|
||||
for mut ch in gv.header {
|
||||
ch = ch[1..2]
|
||||
}
|
||||
|
||||
println(gv)
|
||||
assert gv.header == ['o', 'a']
|
||||
}
|
Loading…
Reference in New Issue