From 8031b2e8c2710cce63c93ec1c6a87b5698370d41 Mon Sep 17 00:00:00 2001 From: Steve Hancock Date: Fri, 1 Nov 2024 16:39:45 -0700 Subject: [PATCH] fix b1499 --- dev-bin/perltidy_random_setup.pl | 2 +- dev-bin/run_convergence_tests.pl.data | 15 +++++++++++++++ dev-bin/run_convergence_tests.pl.expect | 23 +++++++++++++++++++---- lib/Perl/Tidy/Formatter.pm | 12 +++++++++++- 4 files changed, 46 insertions(+), 6 deletions(-) diff --git a/dev-bin/perltidy_random_setup.pl b/dev-bin/perltidy_random_setup.pl index ca9b267b..d1fea210 100755 --- a/dev-bin/perltidy_random_setup.pl +++ b/dev-bin/perltidy_random_setup.pl @@ -915,7 +915,7 @@ EOM 'one-line-block-exclusion-list' => [ 'sort', 'map', 'grep', 'eval', '*', 'zzyzx' ], - 'break-at-trailing-comma-types' => [ '0', '*', 'm', 'b', 'h', 'i', ' ' ], + 'break-at-trailing-comma-types' => [ '0', '1', 'm', 'b' ], 'use-feature' => [ 'class', ' ', 'xyzzy' ], diff --git a/dev-bin/run_convergence_tests.pl.data b/dev-bin/run_convergence_tests.pl.data index d335f8d4..0cce851d 100644 --- a/dev-bin/run_convergence_tests.pl.data +++ b/dev-bin/run_convergence_tests.pl.data @@ -12453,6 +12453,21 @@ a b c d e ); --line-up-parentheses --break-at-trailing-comma-types='b' +==> b1499.in <== + ( $_[ 0 ] < 0 ) ? + -1 : ( + ( $_[ 0 ] >0 ) ? 1 : 0 ); + + ( $_[0] < 0 ) ? -1 : + ( + ( $_[0] > 0 ) ? 1 : 0 ); + +==> b1499.par <== +--maximum-line-length=25 +--variable-maximum-line-length +--opening-paren-right +--break-after-all-operators + ==> b156.in <== # State 1 { diff --git a/dev-bin/run_convergence_tests.pl.expect b/dev-bin/run_convergence_tests.pl.expect index 81dd7c69..c90d98cf 100644 --- a/dev-bin/run_convergence_tests.pl.expect +++ b/dev-bin/run_convergence_tests.pl.expect @@ -5657,7 +5657,8 @@ printf @theme_args = get_themes( \%opt, ( - $2 ? $2 : ( + $2 ? $2 : + ( shift( @theme_args) || @@ -5668,7 +5669,8 @@ printf @theme_args = get_themes( \%opt, ( - $2 ? $2 : ( + $2 ? $2 : + ( shift( @theme_args) || @@ -7606,13 +7608,15 @@ $last = after ( ==> b1440 <== $comp = ( - $form->[3] ? ( + $form->[3] ? + ( $im3->dummy( 0, 3 ) > 0 ) * 255 : ( $im3 > 0 ) ); $comp = ( - $form->[3] ? ( + $form->[3] ? + ( $im3->dummy( 0, 3 ) > 0 ) * 255 : ( $im3 > 0 ) ); @@ -8416,6 +8420,17 @@ my @abc ruler_make_tab( $c, $x, $y, $rinfo ), ); +==> b1499 <== + ( $_[0] < 0 ) ? + -1 : + ( + ( $_[0] > 0 ) ? 1 : 0 ); + + ( $_[0] < 0 ) ? + -1 : + ( + ( $_[0] > 0 ) ? 1 : 0 ); + ==> b156 <== # State 1 { diff --git a/lib/Perl/Tidy/Formatter.pm b/lib/Perl/Tidy/Formatter.pm index 43d7b8b9..d1434be4 100644 --- a/lib/Perl/Tidy/Formatter.pm +++ b/lib/Perl/Tidy/Formatter.pm @@ -39072,6 +39072,14 @@ sub examine_vertical_tightness_flags { return; } ## end sub examine_vertical_tightness_flags +my %is_uncovered_operator; + +# b1060, b1499 +BEGIN { + my @q = qw( ? : && || ); + @is_uncovered_operator{@q} = (1) x scalar(@q); +} + sub set_vertical_tightness_flags { my ( @@ -39430,7 +39438,9 @@ sub set_vertical_tightness_flags { # Fix for case b1060 when both -baoo and -otr are set: # to avoid blinking, honor the -baoo flag over the -otr flag. - && $token_end ne '||' && $token_end ne '&&' + # b1499 added ? and : for same reason + ##&& $token_end ne '||' && $token_end ne '&&' + && !$is_uncovered_operator{$token_end} # Keep break after '=' if -lp. Fixes b964 b1040 b1062 b1083 b1089. # Generalized from '=' to $is_assignment to fix b1375. -- 2.39.5