; cperl-mode.el: Add a test for Bug#74245

* test/lisp/progmodes/cperl-mode-resources/cperl-bug-74245.pl: New test data.

* test/lisp/progmodes/cperl-mode-tests.el (cperl-test-bug-74245): Verify
that a bare \"$\" can appear at the end of a subroutine signature.
This commit is contained in:
Peter Oliver 2024-11-07 19:22:21 +00:00 committed by Harald Jörg
parent 8d289670d6
commit 1fd7957bc7
2 changed files with 25 additions and 0 deletions

View file

@ -0,0 +1,16 @@
# This resource file can be run with cperl--run-testcases from
# cperl-tests.el and works with both perl-mode and cperl-mode.
# -------- signature where last parameter is ignored: input -------
package P {
use v5.36;
sub ignore ($first, $) {}
ignore(qw(first second));
}
# -------- signature where last parameter is ignored: expected output -------
package P {
use v5.36;
sub ignore ($first, $) {}
ignore(qw(first second));
}
# -------- signature where last parameter is ignored: end -------

View file

@ -1589,6 +1589,15 @@ and the slash, then we have a division."
(should (equal (nth 8 (cperl-test-ppss code "/")) 9)))
)
(ert-deftest cperl-test-bug-74245 ()
"Verify that a bare \"$\" can appear at the end of a subroutine signature.
It must not be mistaken for \"$)\"."
(cperl--run-test-cases
(ert-resource-file "cperl-bug-74245.pl")
(while (null (eobp))
(cperl-indent-command)
(forward-line 1))))
(ert-deftest test-indentation ()
(ert-test-erts-file (ert-resource-file "cperl-indents.erts")))