master
1export fn foo() void {
2 var ptr = &[_]u8{ 0, 0, 0, 0 };
3 ptr[1] = 2;
4}
5export fn bar() void {
6 var ptr = &@as(u32, 2);
7 ptr.* = 2;
8 _ = &ptr;
9}
10export fn baz() void {
11 var ptr = &true;
12 ptr.* = false;
13 _ = &ptr;
14}
15export fn qux() void {
16 const S = struct {
17 x: usize,
18 y: usize,
19 };
20 var ptr = &S{ .x = 1, .y = 2 };
21 ptr.x = 2;
22}
23export fn quux() void {
24 var x = &@returnAddress();
25 x.* = 6;
26 _ = &x;
27}
28
29// error
30//
31// :3:8: error: cannot assign to constant
32// :7:8: error: cannot assign to constant
33// :12:8: error: cannot assign to constant
34// :21:8: error: cannot assign to constant
35// :25:6: error: cannot assign to constant