From: Matt S Trout Date: Mon, 16 Apr 2018 02:10:40 +0000 (+0000) Subject: alternatives are correct rather than always backtrack X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=b9314f34b1d49f5086996326a793a7875b385001;p=scpubgit%2FDX.git alternatives are correct rather than always backtrack --- diff --git a/lib/DX/Step/ResolveProposition.pm b/lib/DX/Step/ResolveProposition.pm index 150ddc2..d1ad465 100644 --- a/lib/DX/Step/ResolveProposition.pm +++ b/lib/DX/Step/ResolveProposition.pm @@ -62,7 +62,12 @@ sub apply_to { (my $hyp, my @recheck) = $old_hyp->with_resolution( $prop, $vdeps, $res->actions ); - return $ss->but(next_step => DX::Step::Backtrack->new) unless $hyp; + unless ($hyp) { + return $ss->but( + next_step + => $rspace->remaining_resolution_space->next_step + ); + } return $ss->but(current_hypothesis => $hyp) unless @recheck; return $ss->but( current_hypothesis => $hyp,