mirror of
https://github.com/vlang/v.git
synced 2023-08-10 21:13:21 +03:00
cgen: fix x in shared_map
(#13442)
This commit is contained in:
parent
37c151efe5
commit
0eee012ae9
@ -430,9 +430,12 @@ fn (mut g Gen) infix_expr_in_op(node ast.InfixExpr) {
|
||||
g.expr(node.left)
|
||||
}
|
||||
g.write(', ')
|
||||
if !right.typ.is_ptr() {
|
||||
if !right.typ.is_ptr() || right.typ.has_flag(.shared_f) {
|
||||
g.write('ADDR(map, ')
|
||||
g.expr(node.right)
|
||||
if right.typ.has_flag(.shared_f) {
|
||||
g.write('->val')
|
||||
}
|
||||
g.write(')')
|
||||
} else {
|
||||
g.expr(node.right)
|
||||
|
@ -155,3 +155,17 @@ fn test_shared_map_iteration() {
|
||||
assert n1 == 1
|
||||
assert n2 == 1
|
||||
}
|
||||
|
||||
fn test_shared_map_in() {
|
||||
shared m := {
|
||||
'qwe': 12.75
|
||||
'rtz': -0.125
|
||||
'k': 17
|
||||
}
|
||||
rlock m {
|
||||
assert 'qwe' in m
|
||||
assert 'rtz' in m
|
||||
assert 'k' in m
|
||||
assert 'zxc' !in m
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user