diff options
| author | Harald Jörg | 2025-03-09 16:26:51 +0100 |
|---|---|---|
| committer | Harald Jörg | 2025-03-09 16:26:51 +0100 |
| commit | b2f124f2a8887a3bf2e68ec09500361a2d4d0850 (patch) | |
| tree | f0767b2a16b95f73e0e9420e77b71fca9a8a5e6e | |
| parent | 59d1aac49dfdc49e34be5964f547db0cfa7e127b (diff) | |
| download | emacs-b2f124f2a8887a3bf2e68ec09500361a2d4d0850.tar.gz emacs-b2f124f2a8887a3bf2e68ec09500361a2d4d0850.zip | |
; cperl-mode.el: Don't misinterpret exec_fcn as keyword exec
* lisp/progmodes/cperl-mode.el
(cperl-after-block-and-statement-beg): Recognize _ as part of a
Perl symbol. Fixes Bug#76851
* test/lisp/progmodes/cperl-mode-resources/cperl-indents.erts
Two new test cases around the edges of Bug#76851
| -rw-r--r-- | lisp/progmodes/cperl-mode.el | 2 | ||||
| -rw-r--r-- | test/lisp/progmodes/cperl-mode-resources/cperl-indents.erts | 19 |
2 files changed, 20 insertions, 1 deletions
diff --git a/lisp/progmodes/cperl-mode.el b/lisp/progmodes/cperl-mode.el index 38015ed2acd..dc37457f530 100644 --- a/lisp/progmodes/cperl-mode.el +++ b/lisp/progmodes/cperl-mode.el | |||
| @@ -5539,7 +5539,7 @@ CHARS is a string that contains good characters to have before us (however, | |||
| 5539 | (forward-sexp -1) | 5539 | (forward-sexp -1) |
| 5540 | (not | 5540 | (not |
| 5541 | (looking-at | 5541 | (looking-at |
| 5542 | "\\(map\\|grep\\|say\\|printf?\\|system\\|exec\\|tr\\|s\\)\\>"))))))) | 5542 | "\\(map\\|grep\\|say\\|printf?\\|system\\|exec\\|tr\\|s\\)\\_>"))))))) |
| 5543 | 5543 | ||
| 5544 | 5544 | ||
| 5545 | (defun cperl-indent-exp () | 5545 | (defun cperl-indent-exp () |
diff --git a/test/lisp/progmodes/cperl-mode-resources/cperl-indents.erts b/test/lisp/progmodes/cperl-mode-resources/cperl-indents.erts index ba35b1d0690..ab00e9ce6d4 100644 --- a/test/lisp/progmodes/cperl-mode-resources/cperl-indents.erts +++ b/test/lisp/progmodes/cperl-mode-resources/cperl-indents.erts | |||
| @@ -79,3 +79,22 @@ class C | |||
| 79 | 79 | ||
| 80 | say "done!"; | 80 | say "done!"; |
| 81 | =-=-= | 81 | =-=-= |
| 82 | |||
| 83 | Name: cperl-keyword-in-subname | ||
| 84 | |||
| 85 | =-= | ||
| 86 | # Bug#76851 | ||
| 87 | sub exec_fcn { | ||
| 88 | } | ||
| 89 | |||
| 90 | sub other { | ||
| 91 | } | ||
| 92 | =-=-= | ||
| 93 | |||
| 94 | Name: cperl-keyword-without-space | ||
| 95 | |||
| 96 | =-= | ||
| 97 | # Bug#76851, message #13 | ||
| 98 | my %h = map{$_=>1} | ||
| 99 | @ARGV; | ||
| 100 | =-=-= | ||