aboutsummaryrefslogtreecommitdiff
path: root/gcc/rust/resolve
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/rust/resolve')
-rw-r--r--gcc/rust/resolve/rust-ast-resolve-expr.h1
-rw-r--r--gcc/rust/resolve/rust-ast-resolve-item.h12
-rw-r--r--gcc/rust/resolve/rust-ast-resolve-toplevel.h7
3 files changed, 18 insertions, 2 deletions
diff --git a/gcc/rust/resolve/rust-ast-resolve-expr.h b/gcc/rust/resolve/rust-ast-resolve-expr.h
index 21b2194..9a7e231 100644
--- a/gcc/rust/resolve/rust-ast-resolve-expr.h
+++ b/gcc/rust/resolve/rust-ast-resolve-expr.h
@@ -83,7 +83,6 @@ public:
ResolveExpr::go (p, expr.get_node_id ());
return true;
});
- // resolver->insert_resolved_name(NodeId refId,NodeId defId)
}
void visit (AST::AssignmentExpr &expr)
diff --git a/gcc/rust/resolve/rust-ast-resolve-item.h b/gcc/rust/resolve/rust-ast-resolve-item.h
index b0b979f..02d6dfa 100644
--- a/gcc/rust/resolve/rust-ast-resolve-item.h
+++ b/gcc/rust/resolve/rust-ast-resolve-item.h
@@ -40,10 +40,20 @@ public:
~ResolveItem () {}
+ void visit (AST::TupleStruct &struct_decl)
+ {
+ struct_decl.iterate ([&] (AST::TupleField &field) mutable -> bool {
+ ResolveType::go (field.get_field_type ().get (),
+ struct_decl.get_node_id ());
+ return true;
+ });
+ }
+
void visit (AST::StructStruct &struct_decl)
{
struct_decl.iterate ([&] (AST::StructField &field) mutable -> bool {
- ResolveType::go (field.get_field_type ().get (), field.get_node_id ());
+ ResolveType::go (field.get_field_type ().get (),
+ struct_decl.get_node_id ());
return true;
});
}
diff --git a/gcc/rust/resolve/rust-ast-resolve-toplevel.h b/gcc/rust/resolve/rust-ast-resolve-toplevel.h
index 447fe4b..47435a7 100644
--- a/gcc/rust/resolve/rust-ast-resolve-toplevel.h
+++ b/gcc/rust/resolve/rust-ast-resolve-toplevel.h
@@ -36,6 +36,13 @@ public:
~ResolveTopLevel () {}
+ void visit (AST::TupleStruct &struct_decl)
+ {
+ resolver->get_type_scope ().insert (struct_decl.get_identifier (),
+ struct_decl.get_node_id (),
+ struct_decl.get_locus ());
+ }
+
void visit (AST::StructStruct &struct_decl)
{
resolver->get_type_scope ().insert (struct_decl.get_identifier (),