File tree 1 file changed +3
-7
lines changed
1 file changed +3
-7
lines changed Original file line number Diff line number Diff line change @@ -15684,13 +15684,9 @@ bool AbstractType::TypeTest(TypeTestKind test_kind,
15684
15684
}
15685
15685
const AbstractType& bound = AbstractType::Handle(type_param.bound());
15686
15686
// We may be checking bounds at finalization time and can encounter
15687
- // a still unfinalized bound.
15688
- if (!bound.IsFinalized() && !bound.IsBeingFinalized()) {
15689
- ClassFinalizer::FinalizeType(
15690
- Class::Handle(type_param.parameterized_class()),
15691
- bound,
15692
- ClassFinalizer::kCanonicalize);
15693
- type_param.set_bound(bound);
15687
+ // a still unfinalized bound. Finalizing the bound here may lead to cycles.
15688
+ if (!bound.IsFinalized()) {
15689
+ return false; // TODO(regis): Return "maybe after instantiation".
15694
15690
}
15695
15691
if (bound.IsMoreSpecificThan(other, bound_error)) {
15696
15692
return true;
You can’t perform that action at this time.
0 commit comments