From: Philip Herron <[email protected]>
Fixes #1518
gcc/rust/ChangeLog:
* typecheck/rust-tyty.h: Fix `is_concrete` for unit types with
substitutions.
Tested on x86_64-pc-linux-gnu, committed on master.
---
gcc/rust/typecheck/rust-tyty.h | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/gcc/rust/typecheck/rust-tyty.h b/gcc/rust/typecheck/rust-tyty.h
index 24efc7aa54c..43460d2dd2f 100644
--- a/gcc/rust/typecheck/rust-tyty.h
+++ b/gcc/rust/typecheck/rust-tyty.h
@@ -1362,6 +1362,11 @@ public:
bool is_concrete () const override final
{
+ if (is_unit ())
+ {
+ return !needs_substitution ();
+ }
+
for (auto &variant : variants)
{
for (auto &field : variant->get_fields ())
--
2.39.1
--
Gcc-rust mailing list
[email protected]
https://gcc.gnu.org/mailman/listinfo/gcc-rust