From: Owen Avery <powerboat9.ga...@gmail.com>

gcc/rust/ChangeLog:

        * resolve/rust-toplevel-name-resolver-2.0.cc
        (TopLevel::visit): Handle TypeAlias.
        * resolve/rust-toplevel-name-resolver-2.0.h
        (TopLevel::visit): Likewise.

gcc/testsuite/ChangeLog:

        * rust/compile/nr2/exclude: Remove type-alias1.rs.

Signed-off-by: Owen Avery <powerboat9.ga...@gmail.com>
---
 gcc/rust/resolve/rust-toplevel-name-resolver-2.0.cc | 9 +++++++++
 gcc/rust/resolve/rust-toplevel-name-resolver-2.0.h  | 1 +
 gcc/testsuite/rust/compile/nr2/exclude              | 1 -
 3 files changed, 10 insertions(+), 1 deletion(-)

diff --git a/gcc/rust/resolve/rust-toplevel-name-resolver-2.0.cc 
b/gcc/rust/resolve/rust-toplevel-name-resolver-2.0.cc
index 35732e244b4..b0e0c1b52dc 100644
--- a/gcc/rust/resolve/rust-toplevel-name-resolver-2.0.cc
+++ b/gcc/rust/resolve/rust-toplevel-name-resolver-2.0.cc
@@ -348,6 +348,15 @@ TopLevel::visit (AST::ConstantItem &const_item)
   DefaultResolver::visit (const_item);
 }
 
+void
+TopLevel::visit (AST::TypeAlias &type_item)
+{
+  insert_or_error_out (type_item.get_new_type_name (), type_item,
+                      Namespace::Types);
+
+  DefaultResolver::visit (type_item);
+}
+
 static void
 flatten_rebind (
   const AST::UseTreeRebind &glob,
diff --git a/gcc/rust/resolve/rust-toplevel-name-resolver-2.0.h 
b/gcc/rust/resolve/rust-toplevel-name-resolver-2.0.h
index 09b22612f78..cc301ed7fdd 100644
--- a/gcc/rust/resolve/rust-toplevel-name-resolver-2.0.h
+++ b/gcc/rust/resolve/rust-toplevel-name-resolver-2.0.h
@@ -161,6 +161,7 @@ private:
   void visit (AST::Enum &enum_item) override;
   void visit (AST::Union &union_item) override;
   void visit (AST::ConstantItem &const_item) override;
+  void visit (AST::TypeAlias &type_item) override;
   void visit (AST::ExternCrate &crate) override;
   void visit (AST::TypeParam &type_param) override;
 
diff --git a/gcc/testsuite/rust/compile/nr2/exclude 
b/gcc/testsuite/rust/compile/nr2/exclude
index e0aa15531e1..1faa7b53622 100644
--- a/gcc/testsuite/rust/compile/nr2/exclude
+++ b/gcc/testsuite/rust/compile/nr2/exclude
@@ -206,7 +206,6 @@ traits7.rs
 traits8.rs
 traits9.rs
 tuple_struct1.rs
-type-alias1.rs
 type-bindings1.rs
 unconstrained_type_param.rs
 undeclared_label.rs
-- 
2.45.2

Reply via email to