aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMuhammad Mahad <mahadtxt@gmail.com>2023-09-02 15:18:20 +0500
committerArthur Cohen <arthur.cohen@embecosm.com>2024-01-16 19:04:31 +0100
commit5372086cf5243fa52c09bed8db49fe12918ab746 (patch)
treecba03e7477fcfd6b9bc63cf76d20497befe0c1ba
parent55caa88646a6b2e15ffa3e01fdde487548af692f (diff)
downloadgcc-5372086cf5243fa52c09bed8db49fe12918ab746.zip
gcc-5372086cf5243fa52c09bed8db49fe12918ab746.tar.gz
gcc-5372086cf5243fa52c09bed8db49fe12918ab746.tar.bz2
gccrs: [E0532] Pattern arm did not match expected kind
gcc/rust/ChangeLog: * typecheck/rust-hir-type-check-pattern.cc (TypeCheckPattern::visit): Added error code. gcc/testsuite/ChangeLog: * rust/compile/issue-2029.rs: Updated for dejagnu testcase. Signed-off-by: Muhammad Mahad <mahadtxt@gmail.com>
-rw-r--r--gcc/rust/typecheck/rust-hir-type-check-pattern.cc7
-rw-r--r--gcc/testsuite/rust/compile/issue-2029.rs2
2 files changed, 5 insertions, 4 deletions
diff --git a/gcc/rust/typecheck/rust-hir-type-check-pattern.cc b/gcc/rust/typecheck/rust-hir-type-check-pattern.cc
index 8e9dd55..9a74e15 100644
--- a/gcc/rust/typecheck/rust-hir-type-check-pattern.cc
+++ b/gcc/rust/typecheck/rust-hir-type-check-pattern.cc
@@ -53,9 +53,10 @@ TypeCheckPattern::visit (HIR::TupleStructPattern &pattern)
TyTy::BaseType *pattern_ty = TypeCheckExpr::Resolve (&pattern.get_path ());
if (pattern_ty->get_kind () != TyTy::TypeKind::ADT)
{
- rust_error_at (pattern.get_locus (),
- "expected tuple struct/variant, found: %s",
- pattern_ty->get_name ().c_str ());
+ rust_error_at (
+ pattern.get_locus (), ErrorCode::E0532,
+ "expected tuple struct or tuple variant, found function %qs",
+ pattern_ty->get_name ().c_str ());
return;
}
diff --git a/gcc/testsuite/rust/compile/issue-2029.rs b/gcc/testsuite/rust/compile/issue-2029.rs
index 7856963..dab200d 100644
--- a/gcc/testsuite/rust/compile/issue-2029.rs
+++ b/gcc/testsuite/rust/compile/issue-2029.rs
@@ -6,7 +6,7 @@ fn foo(_: usize) -> Foo {
fn main() {
match Foo(true) {
foo(x)
- // { dg-error "expected tuple struct/variant, found" "" { target *-*-* } .-1 }
+ // { dg-error "expected tuple struct or tuple variant, found function " "" { target *-*-* } .-1 }
=> ()
}
}