From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1643) id F41F13854388; Thu, 12 Jan 2023 07:44:59 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org F41F13854388 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1673509500; bh=PbHibnlmdQzbWChWKO6tEtpPZmnzGOl0/fQEO/LSLCY=; h=From:To:Subject:Date:From; b=Cn4k7s9I7tnPc7e0MDaLLwugk+8XTQHT2lwkNZY4jkk7r4Ea7RlCBXg+rJVfXryWz 0NNS43H67dH2TTLhsKoYbmbtyYt+FYnZBDtCA6BYUEnsi7cPwRhlUQP2PUlyXa2PLf KOj0d7dG/CCDHwU7Hf0vTA+fvCbAokzEi/Pu1XOw= 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] Merge #1724 X-Act-Checkin: gcc X-Git-Author: bors[bot] <26634292+bors[bot]@users.noreply.github.com> X-Git-Refname: refs/heads/devel/rust/master X-Git-Oldrev: 3290293e16fa47cf59f0434343c1bf40497ede90 X-Git-Newrev: b6fcee808fd654d2d5c13b87565f1e59cc61a138 Message-Id: <20230112074459.F41F13854388@sourceware.org> Date: Thu, 12 Jan 2023 07:44:59 +0000 (GMT) List-Id: https://gcc.gnu.org/g:b6fcee808fd654d2d5c13b87565f1e59cc61a138 commit b6fcee808fd654d2d5c13b87565f1e59cc61a138 Merge: 3290293e16f ed6718d979e Author: bors[bot] <26634292+bors[bot]@users.noreply.github.com> Date: Tue Jan 10 22:39:41 2023 +0000 Merge #1724 1724: Add support for generics associated type binding r=philberty a=philberty This patch set adds support to specify the associated type via the argument binding syntax. We are still missing general bounds checking so in order to properly add more test cases for bad types we need to implement that first. I have also changed a test case to -fsyntax-only as at the time I always get confused between Generic arguments of foo=i32 and bar: baz only specifies the associated type and the latter adds a bound. Currently we are lacking a way to represent adding a bound in the AST and HIR within generic arguments so I have raised: #1725 and #1726 Fixes #1720 Co-authored-by: Philip Herron Diff: gcc/rust/hir/tree/rust-hir-path.h | 4 +- gcc/rust/resolve/rust-ast-resolve-type.cc | 5 ++ gcc/rust/typecheck/rust-hir-path-probe.h | 3 +- gcc/rust/typecheck/rust-hir-trait-resolve.cc | 11 +-- gcc/rust/typecheck/rust-hir-type-check-expr.cc | 12 ++-- gcc/rust/typecheck/rust-tyty-bounds.cc | 89 +++++++++++++++++++++--- gcc/rust/typecheck/rust-tyty.cc | 73 ++++++++++++++++--- gcc/rust/typecheck/rust-tyty.h | 48 +++++++++++-- gcc/testsuite/rust/compile/bounds.rs | 8 ++- gcc/testsuite/rust/execute/torture/issue-1720.rs | 26 +++++++ 10 files changed, 241 insertions(+), 38 deletions(-)