# breakwater merge base as an ancestor.
my @ibs =
- grep { is_fast_fwd $bwb, $_ }
grep /./,
split /\n/,
cmdoutput @ibcmd;
- my ($ib) = @ibs
- or $nomerge->("no suitable interchange merge base");
+
+ @ibs or confess 'internal error, expected anchor at least ?';
+
+ my $ib;
+ foreach my $tibix (0..$#ibs) {
+ my $tib = $ibs[$tibix];
+ my $ff = is_fast_fwd $bwb, $tib;
+ next unless $ff;
+ next if $ib;
+ $ib = $tib;
+ }
+
+ $ib or $nomerge->("no suitable interchange merge base");
$prline->(" VanillaMerge Base");
$prprdelim->();
or $nomerge->("interchange merge-base ($ib)'s".
" breakwater ($bbw)".
" != breakwaters' merge-base ($bwb)");
+
grep { $_->{Anchor} eq $ibinfo->{Anchor} } @$ps
or $nomerge->("interchange merge-base ($ib)'s".
" anchor ($ibinfo->{SeriesBase})".
(join ' ', map { $_->{Anchor} } @$ps).
")");
-
$cl->{MergeInterchangeBaseInfo} = $ibinfo;
$cl->{MergeBestAnchor} = $best_anchor;
push @brw_cl, {