# it can lead to "blinkers".
my $ibreakm = $ibreak;
$ibreakm-- if ( $types_to_go[$ibreakm] eq 'b' );
- if ( $ibreakm >= 0 && $types_to_go[$ibreakm] !~ /^[\(\{\[L]$/ )
+
+ # In order to avoid blinkers we have to be fairly restrictive.
+ # This has been updated to avoid breaking at any sequenced item,
+ # so now ternary operators are included, plus closing tokens.
+ # (see case b931, which is similar to the above print example)
+ ##This works too but is a little more restrictive:
+ ##if ( $ibreakm >= 0 && !$type_sequence_to_go[$ibreakm] ) {
+ if ( $ibreakm >= 0
+ && $types_to_go[$ibreakm] !~ /^[\(\{\[L\?\:]$/ )
{
$self->set_forced_breakpoint($ibreak);
}
=over 4
+=item B<Restrict breaking at old uncontained commas>
+
+Random testing with very short maximum line lengths produced some blinking
+states which were traced to duplicating old comma breakpoints which
+were not really good breakpoints. A patch was made to be more selective.
+
+These cases are fixed with this update: b610 b757 b931
+
+15 Feb 2021.
+
=item B<Modify line length test for the -vtc=2 option>
The line length test which was added Feb 13 2021 turns out to be more restrictive
The following cases were re-activated after this update: b654 b655 b656 b862
-15 Feb 2021.
+15 Feb 2021, 4673fdd.
=item B<Use increased line length tolerance if ci exceeds i>