aboutsummaryrefslogtreecommitdiff
path: root/test/cases/compile_errors/assign_to_constant_variable.zig
diff options
context:
space:
mode:
authorIgor Anić <igor.anic@gmail.com>2022-09-26 16:43:45 +0200
committerVeikka Tuominen <git@vexu.eu>2022-09-29 14:45:08 +0300
commit9f6f4601247769a0190938a209e300cd33cd9a3d (patch)
tree95edaf7cc57cf89275c44d402ccdb4a13c1274e4 /test/cases/compile_errors/assign_to_constant_variable.zig
parent317cb629fb919938569b9ef8a782e1f9619d6244 (diff)
downloadzig-9f6f4601247769a0190938a209e300cd33cd9a3d.tar.gz
zig-9f6f4601247769a0190938a209e300cd33cd9a3d.zip
Sema: improve source location in errors
resolves #12793
Diffstat (limited to 'test/cases/compile_errors/assign_to_constant_variable.zig')
-rw-r--r--test/cases/compile_errors/assign_to_constant_variable.zig91
1 files changed, 88 insertions, 3 deletions
diff --git a/test/cases/compile_errors/assign_to_constant_variable.zig b/test/cases/compile_errors/assign_to_constant_variable.zig
index af6f33ec66..b09bf26259 100644
--- a/test/cases/compile_errors/assign_to_constant_variable.zig
+++ b/test/cases/compile_errors/assign_to_constant_variable.zig
@@ -1,6 +1,74 @@
-export fn f() void {
- const a = 3;
- a = 4;
+export fn entry1() void {
+ const a = 1;
+ a = 1;
+}
+export fn entry2() void {
+ const a = 1;
+ a |= 1;
+}
+export fn entry3() void {
+ const a = 1;
+ a %= 1;
+}
+export fn entry4() void {
+ const a = 1;
+ a ^= 1;
+}
+export fn entry5() void {
+ const a = 1;
+ a += 1;
+}
+export fn entry6() void {
+ const a = 1;
+ a +%= 1;
+}
+export fn entry7() void {
+ const a = 1;
+ a +|= 1;
+}
+export fn entry8() void {
+ const a = 1;
+ a -= 1;
+}
+export fn entry9() void {
+ const a = 1;
+ a -%= 1;
+}
+export fn entry10() void {
+ const a = 1;
+ a -|= 1;
+}
+export fn entry11() void {
+ const a = 1;
+ a *= 1;
+}
+export fn entry12() void {
+ const a = 1;
+ a *%= 1;
+}
+export fn entry13() void {
+ const a = 1;
+ a *|= 1;
+}
+export fn entry14() void {
+ const a = 1;
+ a /= 1;
+}
+export fn entry15() void {
+ const a = 1;
+ a &= 1;
+}
+export fn entry16() void {
+ const a = 1;
+ a <<= 1;
+}
+export fn entry17() void {
+ const a = 1;
+ a <<|= 1;
+}
+export fn entry18() void {
+ const a = 1;
+ a >>= 1;
}
// error
@@ -8,3 +76,20 @@ export fn f() void {
// target=native
//
// :3:9: error: cannot assign to constant
+// :7:7: error: cannot assign to constant
+// :11:7: error: cannot assign to constant
+// :15:7: error: cannot assign to constant
+// :19:7: error: cannot assign to constant
+// :23:7: error: cannot assign to constant
+// :27:7: error: cannot assign to constant
+// :31:7: error: cannot assign to constant
+// :35:7: error: cannot assign to constant
+// :39:7: error: cannot assign to constant
+// :43:7: error: cannot assign to constant
+// :47:7: error: cannot assign to constant
+// :51:7: error: cannot assign to constant
+// :55:7: error: cannot assign to constant
+// :59:7: error: cannot assign to constant
+// :63:7: error: cannot assign to constant
+// :67:7: error: cannot assign to constant
+// :71:7: error: cannot assign to constant