From a5daf810f38ce0d4f08ea6a38f55f7f50651305f Mon Sep 17 00:00:00 2001 From: Stefan Monnier Date: Tue, 27 Sep 2011 22:19:56 -0400 Subject: [PATCH] * lisp/progmodes/perl-mode.el (perl-syntax-propertize-function): Don't confuse "y => 3" as the beginning of a `y' operation. --- lisp/ChangeLog | 3 +++ lisp/progmodes/perl-mode.el | 3 ++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index eaea2b33204..f83dbdd344a 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,5 +1,8 @@ 2011-09-28 Stefan Monnier + * progmodes/perl-mode.el (perl-syntax-propertize-function): + Don't confuse "y => 3" as the beginning of a `y' operation. + * emacs-lisp/debug.el (debug-convert-byte-code): Don't assume the object has more than 4 slots (bug#9613). diff --git a/lisp/progmodes/perl-mode.el b/lisp/progmodes/perl-mode.el index 8ca8c690f92..933f004bb5d 100644 --- a/lisp/progmodes/perl-mode.el +++ b/lisp/progmodes/perl-mode.el @@ -304,11 +304,12 @@ The expansion is entirely correct because it uses the C preprocessor." (put-text-property (match-beginning 2) (match-end 2) 'syntax-table (string-to-syntax "\"")) (perl-syntax-propertize-special-constructs end))))) - ("\\(^\\|[?:.,;=!~({[ \t]\\)\\([msy]\\|q[qxrw]?\\|tr\\)\\>\\s-*\\([^])}> \n\t]\\)" + ("\\(^\\|[?:.,;=!~({[ \t]\\)\\([msy]\\|q[qxrw]?\\|tr\\)\\>\\s-*\\(?:\\([^])}>= \n\t]\\)\\|\\(?3:=\\)[^>]\\)" ;; Nasty cases: ;; /foo/m $a->m $#m $m @m %m ;; \s (appears often in regexps). ;; -s file + ;; y => 3 ;; sub tr {...} (3 (ignore (if (save-excursion (goto-char (match-beginning 0)) -- 2.39.2