From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1643) id C6832381D4B1; Wed, 8 Jun 2022 12:46:15 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org C6832381D4B1 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] typecheck: add is_primitive_type_kind helper X-Act-Checkin: gcc X-Git-Author: David Faust X-Git-Refname: refs/heads/devel/rust/master X-Git-Oldrev: c1ff79996acfba45a50f181f9d3be1625cdef8f6 X-Git-Newrev: 502c8a859750064103bb71f4d559cef7b1c1b8af Message-Id: <20220608124615.C6832381D4B1@sourceware.org> Date: Wed, 8 Jun 2022 12:46:15 +0000 (GMT) X-BeenThere: gcc-cvs@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-cvs mailing list List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 08 Jun 2022 12:46:15 -0000 https://gcc.gnu.org/g:502c8a859750064103bb71f4d559cef7b1c1b8af commit 502c8a859750064103bb71f4d559cef7b1c1b8af Author: David Faust Date: Tue May 10 11:19:40 2022 -0700 typecheck: add is_primitive_type_kind helper Diff: --- gcc/rust/typecheck/rust-tyty.cc | 20 ++++++++++++++++++++ gcc/rust/typecheck/rust-tyty.h | 3 +++ 2 files changed, 23 insertions(+) diff --git a/gcc/rust/typecheck/rust-tyty.cc b/gcc/rust/typecheck/rust-tyty.cc index 6b034ea63a7..d0e8b761622 100644 --- a/gcc/rust/typecheck/rust-tyty.cc +++ b/gcc/rust/typecheck/rust-tyty.cc @@ -113,6 +113,26 @@ TypeKindFormat::to_string (TypeKind kind) gcc_unreachable (); } +bool +is_primitive_type_kind (TypeKind kind) +{ + switch (kind) + { + case TypeKind::BOOL: + case TypeKind::CHAR: + case TypeKind::INT: + case TypeKind::UINT: + case TypeKind::ISIZE: + case TypeKind::USIZE: + case TypeKind::FLOAT: + case TypeKind::NEVER: + case TypeKind::STR: + return true; + default: + return false; + } +} + bool BaseType::satisfies_bound (const TypeBoundPredicate &predicate) const { diff --git a/gcc/rust/typecheck/rust-tyty.h b/gcc/rust/typecheck/rust-tyty.h index 5f35c320a5f..a2950e97b56 100644 --- a/gcc/rust/typecheck/rust-tyty.h +++ b/gcc/rust/typecheck/rust-tyty.h @@ -67,6 +67,9 @@ enum TypeKind ERROR }; +extern bool +is_primitive_type_kind (TypeKind kind); + class TypeKindFormat { public: