aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMuhammad Mahad <mahadtxt@gmail.com>2023-07-07 15:10:46 +0500
committerPhilip Herron <philip.herron@embecosm.com>2023-07-09 13:06:33 +0000
commita06cec181de6398231e0662c1ed83d905ad6d1d9 (patch)
treee9669e9ed01e6db464746d62ebb72b0b1d7333e0
parentf7a29f5653ae0787fd57ced935be0be4beb93036 (diff)
downloadgcc-a06cec181de6398231e0662c1ed83d905ad6d1d9.zip
gcc-a06cec181de6398231e0662c1ed83d905ad6d1d9.tar.gz
gcc-a06cec181de6398231e0662c1ed83d905ad6d1d9.tar.bz2
gccrs: [E0070] invalid left-hand side of assignment
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>
-rw-r--r--gcc/rust/resolve/rust-ast-verify-assignee.h2
-rw-r--r--gcc/testsuite/rust/compile/wrong_lhs_assignment.rs7
2 files changed, 8 insertions, 1 deletions
diff --git a/gcc/rust/resolve/rust-ast-verify-assignee.h b/gcc/rust/resolve/rust-ast-verify-assignee.h
index 8d09c9b..e3d453b 100644
--- a/gcc/rust/resolve/rust-ast-verify-assignee.h
+++ b/gcc/rust/resolve/rust-ast-verify-assignee.h
@@ -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
index 0000000..0c638a9
--- /dev/null
+++ b/gcc/testsuite/rust/compile/wrong_lhs_assignment.rs
@@ -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