| fn deref_const() { | |
| var a : vec3<i32>; | |
| let p = &a; | |
| var b = (*p)[0]; | |
| (*p)[0] = 42; | |
| } | |
| fn no_deref_const() { | |
| var a : vec3<i32>; | |
| let p = &a; | |
| var b = p[0]; | |
| p[0] = 42; | |
| } | |
| fn deref_let() { | |
| var a : vec3<i32>; | |
| let p = &a; | |
| let i = 0; | |
| var b = (*p)[i]; | |
| (*p)[0] = 42; | |
| } | |
| fn no_deref_let() { | |
| var a : vec3<i32>; | |
| let p = &a; | |
| let i = 0; | |
| var b = p[i]; | |
| p[0] = 42; | |
| } | |
| fn deref_var() { | |
| var a : vec3<i32>; | |
| let p = &a; | |
| var i = 0; | |
| var b = (*p)[i]; | |
| (*p)[0] = 42; | |
| } | |
| fn no_deref_var() { | |
| var a : vec3<i32>; | |
| let p = &a; | |
| let i = 0; | |
| var b = p[i]; | |
| p[0] = 42; | |
| } | |
| @compute @workgroup_size(1) | |
| fn main() { | |
| deref_const(); | |
| no_deref_const(); | |
| deref_let(); | |
| no_deref_let(); | |
| deref_var(); | |
| no_deref_var(); | |
| } |