aboutsummaryrefslogtreecommitdiff
path: root/gcc/rust/hir/tree/rust-hir.h
diff options
context:
space:
mode:
authorPhilip Herron <herron.philip@googlemail.com>2023-03-03 18:01:01 +0000
committerArthur Cohen <arthur.cohen@embecosm.com>2024-01-16 18:21:08 +0100
commit9e369c3577eaf0e755a2d6da0597a352a4c21a54 (patch)
tree5b19917b031b644fc1e540478592a25ab631a205 /gcc/rust/hir/tree/rust-hir.h
parent10c4a2ce03c99c1394e9d610c0f38ce990284181 (diff)
downloadgcc-9e369c3577eaf0e755a2d6da0597a352a4c21a54.zip
gcc-9e369c3577eaf0e755a2d6da0597a352a4c21a54.tar.gz
gcc-9e369c3577eaf0e755a2d6da0597a352a4c21a54.tar.bz2
gccrs: Fix name-resolution to be permissive and carry on
There are a few edge cases when resolving TypePaths that we cannot fully resolve to an explicit node_id and this is expected. So for example <A as B>::foo A and B are simple Type paths and thats 100% but the segment foo cannot be 100% resolved to an explicit node id as this requires type-resolution to find the correct path. So when we have complex paths such as: <<A as B>::foo as C> The ::foo part will return UNKNOWN_NODEId and we return early and think its a failure case but its not necessarily a failure but we need to make sure to name resolve C so when we do type-resolution we can resolve C properly. Addresses #1524 Signed-off-by: Philip Herron <herron.philip@googlemail.com> gcc/rust/ChangeLog: * resolve/rust-ast-resolve-type.cc (ResolveRelativeQualTypePath::resolve_qual_seg): fix gcc/testsuite/ChangeLog: * rust/compile/parse_associated_type_as_generic_arg3.rs: remove -fsyntax-only
Diffstat (limited to 'gcc/rust/hir/tree/rust-hir.h')
0 files changed, 0 insertions, 0 deletions