diff options
| author | Andrew Kelley <andrew@ziglang.org> | 2022-07-01 15:52:54 -0700 |
|---|---|---|
| committer | Andrew Kelley <andrew@ziglang.org> | 2022-07-01 15:52:54 -0700 |
| commit | c89dd15e1be4959800dc7092d7dd4375253db7bc (patch) | |
| tree | ca184ae53592efa21e67128a5f891d642d7f1118 /test/cases/compile_errors/reference_to_const_data.zig | |
| parent | 5466e87fce581f2ef90ac23bb80b1dbc05836fc6 (diff) | |
| parent | 2360f8c490f3ec684ed64ff28e8c1fade249070b (diff) | |
| download | zig-c89dd15e1be4959800dc7092d7dd4375253db7bc.tar.gz zig-c89dd15e1be4959800dc7092d7dd4375253db7bc.zip | |
Merge remote-tracking branch 'origin/master' into llvm14
Diffstat (limited to 'test/cases/compile_errors/reference_to_const_data.zig')
| -rw-r--r-- | test/cases/compile_errors/reference_to_const_data.zig | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/test/cases/compile_errors/reference_to_const_data.zig b/test/cases/compile_errors/reference_to_const_data.zig new file mode 100644 index 0000000000..6bd9d0eb1e --- /dev/null +++ b/test/cases/compile_errors/reference_to_const_data.zig @@ -0,0 +1,29 @@ +export fn foo() void { + var ptr = &[_]u8{0,0,0,0}; + ptr[1] = 2; +} +export fn bar() void { + var ptr = &@as(u32, 2); + ptr.* = 2; +} +export fn baz() void { + var ptr = &true; + ptr.* = false; +} +export fn qux() void { + const S = struct{ + x: usize, + y: usize, + }; + var ptr = &S{.x=1,.y=2}; + ptr.x = 2; +} + +// error +// backend=stage2 +// target=native +// +// :3:14: error: cannot assign to constant +// :7:13: error: cannot assign to constant +// :11:13: error: cannot assign to constant +// :19:13: error: cannot assign to constant |
