1
0
mirror of https://github.com/vlang/v.git synced 2023-08-10 21:13:21 +03:00

compiler: allow mut passed as argument to be modified

This commit is contained in:
Henrixounez
2019-06-28 19:10:32 +02:00
committed by Alexander Medvednikov
parent ffa69921f5
commit 165dfe5fe0
2 changed files with 23 additions and 1 deletions

View File

@@ -1193,7 +1193,7 @@ fn (p mut Parser) name_expr() string {
hack_lit := p.lit
// amp
ptr := p.tok == AMP
deref := p.tok == MUL
mut deref := p.tok == MUL
if ptr || deref {
p.next()
}
@@ -1237,6 +1237,7 @@ fn (p mut Parser) name_expr() string {
// Variable
v := p.cur_fn.find_var(name)
if v.name.len != 0 {
deref = deref || (v.is_arg && v.is_mut && is_mutable_type(v.typ))
if ptr {
p.gen('& /*vvar*/ ')
}