From c84a5c616cdad17a3470e02f20d0caa8743f340f Mon Sep 17 00:00:00 2001 From: Muhammad Mahad Date: Fri, 7 Jul 2023 15:10:46 +0500 Subject: [PATCH] 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 --- gcc/rust/resolve/rust-ast-verify-assignee.h | 2 +- gcc/testsuite/rust/compile/wrong_lhs_assignment.rs | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) create mode 100644 gcc/testsuite/rust/compile/wrong_lhs_assignment.rs diff --git a/gcc/rust/resolve/rust-ast-verify-assignee.h b/gcc/rust/resolve/rust-ast-verify-assignee.h index 1b4d85c32158..9d801182d98f 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 000000000000..0c638a901c3d --- /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 -- 2.47.2