From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1643) id 5837F385840A; Sun, 5 Mar 2023 11:42:30 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 5837F385840A DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1678016550; bh=TXFU+19+xeEf2o1w+Q8o3EyhfuCxeDBshl8KGCHdfhg=; h=From:To:Subject:Date:From; b=bJXb7EZxJE6dXy6FoV3j8pBvUu/7e0uaQ73Gc0Z0P4jO/16783CHEtHQMaw8k2S3r pQX9mQiCj/B/CY6SXUjXuDPLCIvG9Axrq0qoZMGx4rg84BqAnvjoixN4I2XkZPtIUY VAPRc+kEwS9Y0LdZ8g0Snb3ivzzL9k2wZL432HLQ= 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] gccrs: destructure parameter names. X-Act-Checkin: gcc X-Git-Author: Philip Herron X-Git-Refname: refs/heads/devel/rust/master X-Git-Oldrev: 6540653bc29778a5473746bc7463c75204e07c23 X-Git-Newrev: 22465fbc8cca239aadcb35cd51d820d6d7213238 Message-Id: <20230305114230.5837F385840A@sourceware.org> Date: Sun, 5 Mar 2023 11:42:30 +0000 (GMT) List-Id: https://gcc.gnu.org/g:22465fbc8cca239aadcb35cd51d820d6d7213238 commit 22465fbc8cca239aadcb35cd51d820d6d7213238 Author: Philip Herron Date: Fri Mar 3 16:12:46 2023 +0000 gccrs: destructure parameter names. When we have complex generic code you can end up with situations where we compile types: Maybe<::A> Into Maybe<>> This calls destructure to cleanup the naming here and avoid making non canonical TREE_TYPES hitting the verify_gimple code triggering non-trival constructors. Signed-off-by: Philip Herron gcc/rust/ChangeLog: * typecheck/rust-tyty.cc (ParamType::get_name): call destructure Diff: --- gcc/rust/typecheck/rust-tyty.cc | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/gcc/rust/typecheck/rust-tyty.cc b/gcc/rust/typecheck/rust-tyty.cc index 110f59266f3..e6dfc561fbf 100644 --- a/gcc/rust/typecheck/rust-tyty.cc +++ b/gcc/rust/typecheck/rust-tyty.cc @@ -18,10 +18,7 @@ #include "rust-tyty.h" -#include "rust-hir-type-check-expr.h" -#include "rust-hir-type-check-type.h" #include "rust-tyty-visitor.h" -#include "rust-tyty-call.h" #include "rust-hir-map.h" #include "rust-location.h" #include "rust-linemap.h" @@ -2961,7 +2958,7 @@ ParamType::get_name () const if (!can_resolve ()) return get_symbol (); - return resolve ()->get_name (); + return destructure ()->get_name (); } bool