v2 / vlib / v / checker / tests / call_result_aliases_immutable_value_err.vv
25 lines · 21 sloc · 263 bytes · 0b3ebd29ebf9f531b046743f51ed88d6f498978f
Raw
1@[heap]
2struct User {
3mut:
4 name string
5}
6
7fn id(arr []int) []int {
8 return arr[1..2]
9}
10
11fn rere(a &User) &User {
12 return a
13}
14
15fn main() {
16 arr := [1, 2, 3, 4, 5]
17 mut s := id(arr)
18 s[0] = 0
19 id(arr)[0] = 0
20
21 ja := User{
22 name: 'foo'
23 }
24 rere(ja).name = 'bar'
25}
26