From ff4d4570b44baf6a106cb0cfde3a1fe9ff0ed09f Mon Sep 17 00:00:00 2001 From: Arthur Cohen Date: Tue, 28 Mar 2023 13:55:19 +0200 Subject: resolver: Allow SimplePath to resolve to their root segment SimplePath are allowed to resolve to their root segment even if it is `crate` or `super` when checking visibilities. We now have to make sure that this is allowed everywhere a SimplePath is kept. gcc/rust/ChangeLog: * resolve/rust-ast-resolve-path.cc (ResolvePath::resolve_path): Set resolved_node_id when visiting root segment of SimplePath. --- gcc/rust/resolve/rust-ast-resolve-path.cc | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'gcc') diff --git a/gcc/rust/resolve/rust-ast-resolve-path.cc b/gcc/rust/resolve/rust-ast-resolve-path.cc index d8e6f90..ab93333 100644 --- a/gcc/rust/resolve/rust-ast-resolve-path.cc +++ b/gcc/rust/resolve/rust-ast-resolve-path.cc @@ -283,6 +283,8 @@ ResolvePath::resolve_path (AST::SimplePath *expr) previous_resolved_node_id = module_scope_id; resolver->insert_resolved_name (segment.get_node_id (), module_scope_id); + resolved_node_id = module_scope_id; + continue; } else if (segment.is_super_path_seg ()) @@ -298,6 +300,8 @@ ResolvePath::resolve_path (AST::SimplePath *expr) previous_resolved_node_id = module_scope_id; resolver->insert_resolved_name (segment.get_node_id (), module_scope_id); + resolved_node_id = module_scope_id; + continue; } -- cgit v1.1