From: Steve Hancock Date: Tue, 30 Aug 2022 13:42:15 +0000 (-0700) Subject: fix problem formatting function 'err' X-Git-Tag: 20220613.05~18 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=081879d2e5ded2f53b565f70b456eb1f26923abe;p=perltidy.git fix problem formatting function 'err' --- diff --git a/CHANGES.md b/CHANGES.md index 767780ab..4470c4ed 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -69,6 +69,17 @@ Also, previously a word following a '->' was given the color of a bareword, black by default, but now it is given the color of an identifier. + - Fixed incorrect formatting of any function named 'err'. This was + due to some old code when use feature 'err' was valid. + + # OLD: + my ($curr) = current(); + err (@_); + + # NEW: + my ($curr) = current(); + err(@_); + - This version runs about 5 percent faster on large files than the previous release. diff --git a/lib/Perl/Tidy/Tokenizer.pm b/lib/Perl/Tidy/Tokenizer.pm index e6e26158..c9be0627 100644 --- a/lib/Perl/Tidy/Tokenizer.pm +++ b/lib/Perl/Tidy/Tokenizer.pm @@ -3671,6 +3671,12 @@ EOM $statement_type = $tok; # next '{' is block } + # feature 'err' was removed in Perl 5.10. So mark this as + # a bareword unless an operator is expected (see c158). + elsif ( $tok eq 'err' ) { + if ( $expecting != OPERATOR ) { $type = 'w' } + } + return; } ## end sub do_KEYWORD