Skip to content

Commit edb5af3

Browse files
committed
fix(typecheck): handle unresolved lifetime errors in resolve_root_path
gcc/rust/ChangeLog: * typecheck/rust-hir-type-check-type.cc (TypeCheckType::resolve_root_path): handle the error condition from `regions_from_generic_args` Signed-off-by: vibhatsu <maulikbarot2915@gmail.com>
1 parent 1c6d3bf commit edb5af3

1 file changed

Lines changed: 5 additions & 0 deletions

File tree

gcc/rust/typecheck/rust-hir-type-check-type.cc

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -458,6 +458,11 @@ TypeCheckType::resolve_root_path (HIR::TypePath &path, size_t *offset,
458458

459459
auto regions = context->regions_from_generic_args (
460460
generic_segment.get_generic_args ());
461+
// regions_from_generic_args returns empty vector on error
462+
if (!generic_segment.get_generic_args ().get_lifetime_args ().empty ()
463+
&& regions.empty ())
464+
return new TyTy::ErrorType (seg->get_mappings ().get_hirid ());
465+
461466
lookup = SubstMapper::Resolve (lookup, path.get_locus (),
462467
&generic_segment.get_generic_args (),
463468
regions);

0 commit comments

Comments
 (0)