]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
gccrs: [E0070] invalid left-hand side of assignment
authorMuhammad Mahad <mahadtxt@gmail.com>
Fri, 7 Jul 2023 10:10:46 +0000 (15:10 +0500)
committerArthur Cohen <arthur.cohen@embecosm.com>
Tue, 16 Jan 2024 17:49:35 +0000 (18:49 +0100)
gcc/rust/ChangeLog:

* resolve/rust-ast-verify-assignee.h: called error function.

gcc/testsuite/ChangeLog:

* rust/compile/wrong_lhs_assignment.rs: New test.

Signed-off-by: Muhammad Mahad <mahadtxt@gmail.com>
gcc/rust/resolve/rust-ast-verify-assignee.h
gcc/testsuite/rust/compile/wrong_lhs_assignment.rs [new file with mode: 0644]

index 1b4d85c32158cfa16352c43e2b50946c7fa1a48d..9d801182d98fe2fbcc9c3526a276d656b11166dc 100644 (file)
@@ -35,7 +35,7 @@ public:
     VerifyAsignee checker;
     assignee->accept_vis (checker);
     if (!checker.ok)
-      rust_error_at (assignee->get_locus (),
+      rust_error_at (assignee->get_locus (), ErrorCode ("E0070"),
                     "invalid left-hand side of assignment");
     return checker.ok;
   }
diff --git a/gcc/testsuite/rust/compile/wrong_lhs_assignment.rs b/gcc/testsuite/rust/compile/wrong_lhs_assignment.rs
new file mode 100644 (file)
index 0000000..0c638a9
--- /dev/null
@@ -0,0 +1,7 @@
+fn foo() {
+    1 = 3; // { dg-error "invalid left-hand side of assignment" }
+}
+
+fn main() {
+    foo();
+}
\ No newline at end of file