diff options
author | Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> | 2025-01-06 15:55:53 +0100 |
---|---|---|
committer | Arthur Cohen <arthur.cohen@embecosm.com> | 2025-03-24 13:06:57 +0100 |
commit | af1acc3599c0dcbc96b885bef81786a3d68b386a (patch) | |
tree | 860538dab1721920306ee3453e9caf52993ab4e8 | |
parent | 48d524e2ee0142199a5eed50c7aa247cef849e5c (diff) | |
download | gcc-af1acc3599c0dcbc96b885bef81786a3d68b386a.zip gcc-af1acc3599c0dcbc96b885bef81786a3d68b386a.tar.gz gcc-af1acc3599c0dcbc96b885bef81786a3d68b386a.tar.bz2 |
gccrs: Resolved item type shall be differentiated later
We need to query all namespaces and error out at a later stage if the
retrieved item is wrong.
gcc/rust/ChangeLog:
* typecheck/rust-hir-trait-resolve.cc (TraitResolver::resolve_path_to_trait):
Query all namespaces.
Signed-off-by: Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com>
-rw-r--r-- | gcc/rust/typecheck/rust-hir-trait-resolve.cc | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/gcc/rust/typecheck/rust-hir-trait-resolve.cc b/gcc/rust/typecheck/rust-hir-trait-resolve.cc index 8201932..04af5ab 100644 --- a/gcc/rust/typecheck/rust-hir-trait-resolve.cc +++ b/gcc/rust/typecheck/rust-hir-trait-resolve.cc @@ -127,8 +127,10 @@ TraitResolver::resolve_path_to_trait (const HIR::TypePath &path, } else { - ok = resolver->lookup_resolved_type (path.get_mappings ().get_nodeid (), - &ref); + auto path_nodeid = path.get_mappings ().get_nodeid (); + ok = resolver->lookup_resolved_type (path_nodeid, &ref) + || resolver->lookup_resolved_name (path_nodeid, &ref) + || resolver->lookup_resolved_macro (path_nodeid, &ref); } if (!ok) |