From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1643) id F3C203858C50; Thu, 26 Jan 2023 07:27:17 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org F3C203858C50 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1674718038; bh=FQv9RhkMZ9wbbATlchTrSjRwkF7k8O8cSDaY0BhhwbY=; h=From:To:Subject:Date:From; b=bKCZYYnY6yggG0v//ye2VOdXWT4RqGC6GQy5ZqELvfnykYT2ED5f65T2pazkQnUck SgE8PsBh8JmNnOkx59zs6cteP8UNT+PRnkXUwvppsfVHmcMcfgcqpMwybSeXqnu8Rg X/2SQhrBZhOWK2B4mPHpuEMfJlL6MFtnBJNt0z3Y= Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: Thomas Schwinge To: gcc-cvs@gcc.gnu.org Subject: [gcc/devel/rust/master] Add HIR lowering for GroupedPattern X-Act-Checkin: gcc X-Git-Author: Owen Avery X-Git-Refname: refs/heads/devel/rust/master X-Git-Oldrev: 6a320bca7be0535b1e402ee48741df15c8e0aa8d X-Git-Newrev: ea7893625e8246b85da4d3aa0fef40f82d619873 Message-Id: <20230126072717.F3C203858C50@sourceware.org> Date: Thu, 26 Jan 2023 07:27:17 +0000 (GMT) List-Id: https://gcc.gnu.org/g:ea7893625e8246b85da4d3aa0fef40f82d619873 commit ea7893625e8246b85da4d3aa0fef40f82d619873 Author: Owen Avery Date: Wed Jan 11 11:54:54 2023 -0500 Add HIR lowering for GroupedPattern Signed-off-by: Owen Avery Diff: --- gcc/rust/hir/rust-ast-lower-pattern.cc | 16 ++++++++++++++++ gcc/rust/hir/rust-ast-lower-pattern.h | 1 + 2 files changed, 17 insertions(+) diff --git a/gcc/rust/hir/rust-ast-lower-pattern.cc b/gcc/rust/hir/rust-ast-lower-pattern.cc index 2c9a0dc59a1..d13af46523b 100644 --- a/gcc/rust/hir/rust-ast-lower-pattern.cc +++ b/gcc/rust/hir/rust-ast-lower-pattern.cc @@ -243,5 +243,21 @@ ASTLoweringPattern::visit (AST::RangePattern &pattern) std::move (upper_bound), pattern.get_locus ()); } +void +ASTLoweringPattern::visit (AST::GroupedPattern &pattern) +{ + auto crate_num = mappings->get_current_crate (); + Analysis::NodeMapping mapping (crate_num, pattern.get_node_id (), + mappings->get_next_hir_id (crate_num), + UNKNOWN_LOCAL_DEFID); + + HIR::Pattern *inner + = ASTLoweringPattern::translate (pattern.get_pattern_in_parens ().get ()); + + translated + = new HIR::GroupedPattern (mapping, std::unique_ptr (inner), + pattern.get_locus ()); +} + } // namespace HIR } // namespace Rust diff --git a/gcc/rust/hir/rust-ast-lower-pattern.h b/gcc/rust/hir/rust-ast-lower-pattern.h index 4ab81a856a7..20a5529d856 100644 --- a/gcc/rust/hir/rust-ast-lower-pattern.h +++ b/gcc/rust/hir/rust-ast-lower-pattern.h @@ -39,6 +39,7 @@ public: void visit (AST::TuplePattern &pattern) override; void visit (AST::LiteralPattern &pattern) override; void visit (AST::RangePattern &pattern) override; + void visit (AST::GroupedPattern &pattern) override; private: ASTLoweringPattern ();