aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOwen Avery <powerboat9.gamer@gmail.com>2023-01-11 11:56:05 -0500
committerArthur Cohen <arthur.cohen@embecosm.com>2023-04-06 10:47:18 +0200
commit83e5f634d746a9b57b1c63eb33e072f53f61995d (patch)
treef2082fb71bda8990f14b72a6ec7b57bfae1833a7
parentd5a303cc664e8ed5f7f59ddad744eb32ecb0f915 (diff)
downloadgcc-83e5f634d746a9b57b1c63eb33e072f53f61995d.zip
gcc-83e5f634d746a9b57b1c63eb33e072f53f61995d.tar.gz
gcc-83e5f634d746a9b57b1c63eb33e072f53f61995d.tar.bz2
gccrs: Add type resolution for grouped patterns
gcc/rust/ChangeLog: * typecheck/rust-hir-type-check-pattern.cc (TypeCheckPattern::visit): Add proper visitor. Signed-off-by: Owen Avery <powerboat9.gamer@gmail.com>
-rw-r--r--gcc/rust/typecheck/rust-hir-type-check-pattern.cc8
1 files changed, 5 insertions, 3 deletions
diff --git a/gcc/rust/typecheck/rust-hir-type-check-pattern.cc b/gcc/rust/typecheck/rust-hir-type-check-pattern.cc
index b017a85..393f415 100644
--- a/gcc/rust/typecheck/rust-hir-type-check-pattern.cc
+++ b/gcc/rust/typecheck/rust-hir-type-check-pattern.cc
@@ -387,10 +387,12 @@ TypeCheckPattern::visit (HIR::IdentifierPattern &)
}
void
-TypeCheckPattern::visit (HIR::GroupedPattern &)
+TypeCheckPattern::visit (HIR::GroupedPattern &pattern)
{
- // TODO
- gcc_unreachable ();
+ TyTy::BaseType *inner_ty
+ = TypeCheckPattern::Resolve (pattern.get_item ().get (), parent);
+ infered = inner_ty->clone ();
+ infered->set_ref (pattern.get_pattern_mappings ().get_hirid ());
}
void