Package: emacs;
Reported by: JC Petkovich <jcpetkovich <at> gmail.com>
Date: Tue, 17 Jul 2012 21:30:01 UTC
Severity: normal
Found in version 24.1
Fixed in version 24.2
Done: Stefan Monnier <monnier <at> IRO.UMontreal.CA>
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 11966 in the body.
You can then email your comments to 11966 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
View this report as an mbox folder, status mbox, maintainer mbox
bug-gnu-emacs <at> gnu.org
:bug#11966
; Package emacs
.
(Tue, 17 Jul 2012 21:30:02 GMT) Full text and rfc822 format available.JC Petkovich <jcpetkovich <at> gmail.com>
:bug-gnu-emacs <at> gnu.org
.
(Tue, 17 Jul 2012 21:30:02 GMT) Full text and rfc822 format available.Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
From: JC Petkovich <jcpetkovich <at> gmail.com> To: bug-gnu-emacs <at> gnu.org Subject: 24.1; cperl-mode with evil-mode causes hang on syntax-propertize Date: Tue, 17 Jul 2012 15:04:04 -0400
[Message part 1 (text/plain, inline)]
Emacs hangs on the creation of a newline with evil-ret when in a cperl buffer with some POD documentation after the __END__. This doesn't appear to be a bug in evil, but instead a bug in cperl or syntax-propertize, but I can't tell for sure. I can reproduce it with emacs -Q and the following configuration: ;; evil-error-reproduce.el: (defalias 'perl-mode 'cperl-mode) (add-to-list 'load-path "<path to evil>") (require 'evil) (evil-mode 1) ;; end evil-error-reproduce.el Once this config is evaluated, open a .pl file which has POD after __END__ like the following: # hangs.pl: print "hello world"; __END__ =head1 NAME # end hangs.pl and open a newline after the print statement with evil-ret (bound to RET when in insert mode by default). I haven't been able to get further than this in debugging this problem. In GNU Emacs 24.1.1 (x86_64-pc-linux-gnu, GTK+ Version 2.24.10) of 2012-07-17 on jcp-lenovo Windowing system distributor `The X.Org Foundation', version 11.0.11202000 Configured using: `configure '--prefix=/usr' '--build=x86_64-pc-linux-gnu' '--host=x86_64-pc-linux-gnu' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--datadir=/usr/share' '--sysconfdir=/etc' '--localstatedir=/var/lib' '--libdir=/usr/lib64' '--disable-dependency-tracking' '--program-suffix=-emacs-24' '--infodir=/usr/share/info/emacs-24' '--enable-locallisppath=/etc/emacs:/usr/share/emacs/site-lisp' '--with-crt-dir=/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../lib64' '--with-gameuser=games' '--without-compress-info' '--disable-maintainer-mode' '--without-hesiod' '--without-kerberos' '--without-kerberos5' '--with-gpm' '--with-dbus' '--with-gnutls' '--without-xml2' '--without-selinux' '--without-wide-int' '--with-sound' '--with-x' '--without-ns' '--without-gconf' '--without-gsettings' '--without-toolkit-scroll-bars' '--with-gif' '--with-jpeg' '--with-png' '--with-rsvg' '--with-tiff' '--with-xpm' '--without-imagemagick' '--with-xft' '--without-libotf' '--without-m17n-flt' '--with-x-toolkit=gtk' 'GENTOO_PACKAGE=app-editors/emacs-24.1' 'build_alias=x86_64-pc-linux-gnu' 'host_alias=x86_64-pc-linux-gnu' 'CFLAGS=-O2 -march=native -pipe' 'LDFLAGS=-Wl,-O1 -Wl,--as-needed -Wl,-O1' 'CPPFLAGS='' Important settings: value of $LC_ALL: nil value of $LC_COLLATE: nil value of $LC_CTYPE: en_US.UTF-8 value of $LC_MESSAGES: nil value of $LC_MONETARY: nil value of $LC_NUMERIC: nil value of $LC_TIME: nil value of $LANG: en_US.UTF-8 value of $XMODIFIERS: nil locale-coding-system: utf-8-unix default enable-multibyte-characters: t Major mode: CPerl Minor modes in effect: evil-mode: t evil-local-mode: t tooltip-mode: t mouse-wheel-mode: t tool-bar-mode: t menu-bar-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t blink-cursor-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t line-number-mode: t transient-mark-mode: t Recent input: r <tab> r e m <tab> r e <tab> <return> j j j j j j j j j j j j j j j j j j j j j j j j j j j k o <return> ESC j j j j V G d g g j j k k V j j j j d j j j j j j j j j j j j j j j j j j j j j j j j j k k i <return> <return> <backspace> <backspace> ESC u u j j j j j j j j j j j j j j j j j j j j j j j j i <backspace> <return> <return> ESC u u u u u u k k k g g j j j j j j j j j j j j j j j j j j j j j j j j j j j j j j j j k k k k g g V j j j j j k d j j j j j j j j j j j j j j j j j j j j j j j j i <return> C-g ESC u j j j j j V G d k k k k k i i <backspace> <return> C-g ESC u C-x b C-g C-x C-b C-g C-x b s c C-g C-x C-f C-g C-x b s c r <tab> <return> C-x 1 j j o <return> <return> <return> ESC M-j M-j p k A C-x C-e ESC C-x C-b r e m <tab> C-g C-x C-g C-x b <tab> <return> M-1 C-x 1 i <return> C-g ESC k d d M-x r e p o <tab> r <tab> <return> Recent messages: Quit [2 times] Undo! Quit [4 times] byte-code: End of buffer [2 times] t End of line Quit Making completion list... Quit [2 times] Making completion list... Load-path shadows: /usr/share/emacs/site-lisp/cedet/speedbar/speedbar hides /usr/share/emacs/24.1/lisp/speedbar /usr/share/emacs/site-lisp/cedet/common/ezimage hides /usr/share/emacs/24.1/lisp/ezimage /usr/share/emacs/site-lisp/cedet/speedbar/dframe hides /usr/share/emacs/24.1/lisp/dframe /usr/share/emacs/site-lisp/cedet/speedbar/sb-image hides /usr/share/emacs/24.1/lisp/sb-image /usr/share/emacs/site-lisp/ruby-mode/ruby-mode hides /usr/share/emacs/24.1/lisp/progmodes/ruby-mode /usr/share/emacs/site-lisp/org-mode/org-archive hides /usr/share/emacs/24.1/lisp/org/org-archive /usr/share/emacs/site-lisp/org-mode/ob-clojure hides /usr/share/emacs/24.1/lisp/org/ob-clojure /usr/share/emacs/site-lisp/org-mode/ob-keys hides /usr/share/emacs/24.1/lisp/org/ob-keys /usr/share/emacs/site-lisp/org-mode/org-macs hides /usr/share/emacs/24.1/lisp/org/org-macs /usr/share/emacs/site-lisp/org-mode/org-agenda hides /usr/share/emacs/24.1/lisp/org/org-agenda /usr/share/emacs/site-lisp/org-mode/org-mks hides /usr/share/emacs/24.1/lisp/org/org-mks /usr/share/emacs/site-lisp/org-mode/org-capture hides /usr/share/emacs/24.1/lisp/org/org-capture /usr/share/emacs/site-lisp/org-mode/ob-plantuml hides /usr/share/emacs/24.1/lisp/org/ob-plantuml /usr/share/emacs/site-lisp/org-mode/org-indent hides /usr/share/emacs/24.1/lisp/org/org-indent /usr/share/emacs/site-lisp/org-mode/ob-table hides /usr/share/emacs/24.1/lisp/org/ob-table /usr/share/emacs/site-lisp/org-mode/org-src hides /usr/share/emacs/24.1/lisp/org/org-src /usr/share/emacs/site-lisp/org-mode/ob-asymptote hides /usr/share/emacs/24.1/lisp/org/ob-asymptote /usr/share/emacs/site-lisp/org-mode/org-bbdb hides /usr/share/emacs/24.1/lisp/org/org-bbdb /usr/share/emacs/site-lisp/org-mode/org-datetree hides /usr/share/emacs/24.1/lisp/org/org-datetree /usr/share/emacs/site-lisp/org-mode/org-attach hides /usr/share/emacs/24.1/lisp/org/org-attach /usr/share/emacs/site-lisp/org-mode/org-clock hides /usr/share/emacs/24.1/lisp/org/org-clock /usr/share/emacs/site-lisp/org-mode/org-list hides /usr/share/emacs/24.1/lisp/org/org-list /usr/share/emacs/site-lisp/org-mode/ob-sql hides /usr/share/emacs/24.1/lisp/org/ob-sql /usr/share/emacs/site-lisp/org-mode/ob-sqlite hides /usr/share/emacs/24.1/lisp/org/ob-sqlite /usr/share/emacs/site-lisp/org-mode/ob-org hides /usr/share/emacs/24.1/lisp/org/ob-org /usr/share/emacs/site-lisp/org-mode/org-crypt hides /usr/share/emacs/24.1/lisp/org/org-crypt /usr/share/emacs/site-lisp/org-mode/ob-R hides /usr/share/emacs/24.1/lisp/org/ob-R /usr/share/emacs/site-lisp/org-mode/ob-python hides /usr/share/emacs/24.1/lisp/org/ob-python /usr/share/emacs/site-lisp/org-mode/ob-sh hides /usr/share/emacs/24.1/lisp/org/ob-sh /usr/share/emacs/site-lisp/org-mode/ob-dot hides /usr/share/emacs/24.1/lisp/org/ob-dot /usr/share/emacs/site-lisp/org-mode/ob-ruby hides /usr/share/emacs/24.1/lisp/org/ob-ruby /usr/share/emacs/site-lisp/org-mode/org-publish hides /usr/share/emacs/24.1/lisp/org/org-publish /usr/share/emacs/site-lisp/org-mode/org-beamer hides /usr/share/emacs/24.1/lisp/org/org-beamer /usr/share/emacs/site-lisp/org-mode/org-mac-message hides /usr/share/emacs/24.1/lisp/org/org-mac-message /usr/share/emacs/site-lisp/org-mode/org-faces hides /usr/share/emacs/24.1/lisp/org/org-faces /usr/share/emacs/site-lisp/org-mode/ob-exp hides /usr/share/emacs/24.1/lisp/org/ob-exp /usr/share/emacs/site-lisp/org-mode/org-entities hides /usr/share/emacs/24.1/lisp/org/org-entities /usr/share/emacs/site-lisp/org-mode/ob-awk hides /usr/share/emacs/24.1/lisp/org/ob-awk /usr/share/emacs/site-lisp/org-mode/org-html hides /usr/share/emacs/24.1/lisp/org/org-html /usr/share/emacs/site-lisp/org-mode/ob-ref hides /usr/share/emacs/24.1/lisp/org/ob-ref /usr/share/emacs/site-lisp/org-mode/org-inlinetask hides /usr/share/emacs/24.1/lisp/org/org-inlinetask /usr/share/emacs/site-lisp/org-mode/org-freemind hides /usr/share/emacs/24.1/lisp/org/org-freemind /usr/share/emacs/site-lisp/org-mode/org-feed hides /usr/share/emacs/24.1/lisp/org/org-feed /usr/share/emacs/site-lisp/org-mode/ob-calc hides /usr/share/emacs/24.1/lisp/org/ob-calc /usr/share/emacs/site-lisp/org-mode/ob-js hides /usr/share/emacs/24.1/lisp/org/ob-js /usr/share/emacs/site-lisp/org-mode/ob-sass hides /usr/share/emacs/24.1/lisp/org/ob-sass /usr/share/emacs/site-lisp/org-mode/org-footnote hides /usr/share/emacs/24.1/lisp/org/org-footnote /usr/share/emacs/site-lisp/org-mode/ob-emacs-lisp hides /usr/share/emacs/24.1/lisp/org/ob-emacs-lisp /usr/share/emacs/site-lisp/org-mode/org-remember hides /usr/share/emacs/24.1/lisp/org/org-remember /usr/share/emacs/site-lisp/org-mode/ob-eval hides /usr/share/emacs/24.1/lisp/org/ob-eval /usr/share/emacs/site-lisp/org-mode/org-id hides /usr/share/emacs/24.1/lisp/org/org-id /usr/share/emacs/site-lisp/org-mode/org-icalendar hides /usr/share/emacs/24.1/lisp/org/org-icalendar /usr/share/emacs/site-lisp/org-mode/org-plot hides /usr/share/emacs/24.1/lisp/org/org-plot /usr/share/emacs/site-lisp/org-mode/ob-css hides /usr/share/emacs/24.1/lisp/org/ob-css /usr/share/emacs/site-lisp/org-mode/org-jsinfo hides /usr/share/emacs/24.1/lisp/org/org-jsinfo /usr/share/emacs/site-lisp/org-mode/org-vm hides /usr/share/emacs/24.1/lisp/org/org-vm /usr/share/emacs/site-lisp/org-mode/org-mobile hides /usr/share/emacs/24.1/lisp/org/org-mobile /usr/share/emacs/site-lisp/org-mode/org-mhe hides /usr/share/emacs/24.1/lisp/org/org-mhe /usr/share/emacs/site-lisp/org-mode/org-taskjuggler hides /usr/share/emacs/24.1/lisp/org/org-taskjuggler /usr/share/emacs/site-lisp/org-mode/org-table hides /usr/share/emacs/24.1/lisp/org/org-table /usr/share/emacs/site-lisp/org-mode/org-bibtex hides /usr/share/emacs/24.1/lisp/org/org-bibtex /usr/share/emacs/site-lisp/org-mode/org-exp hides /usr/share/emacs/24.1/lisp/org/org-exp /usr/share/emacs/site-lisp/org-mode/ob-tangle hides /usr/share/emacs/24.1/lisp/org/ob-tangle /usr/share/emacs/site-lisp/org-mode/ob-perl hides /usr/share/emacs/24.1/lisp/org/ob-perl /usr/share/emacs/site-lisp/org-mode/ob-scheme hides /usr/share/emacs/24.1/lisp/org/ob-scheme /usr/share/emacs/site-lisp/org-mode/ob-gnuplot hides /usr/share/emacs/24.1/lisp/org/ob-gnuplot /usr/share/emacs/site-lisp/org-mode/org-mouse hides /usr/share/emacs/24.1/lisp/org/org-mouse /usr/share/emacs/site-lisp/org-mode/ob-lisp hides /usr/share/emacs/24.1/lisp/org/ob-lisp /usr/share/emacs/site-lisp/org-mode/ob-C hides /usr/share/emacs/24.1/lisp/org/ob-C /usr/share/emacs/site-lisp/org-mode/ob-haskell hides /usr/share/emacs/24.1/lisp/org/ob-haskell /usr/share/emacs/site-lisp/org-mode/org-ascii hides /usr/share/emacs/24.1/lisp/org/org-ascii /usr/share/emacs/site-lisp/org-mode/ob-java hides /usr/share/emacs/24.1/lisp/org/ob-java /usr/share/emacs/site-lisp/org-mode/org-habit hides /usr/share/emacs/24.1/lisp/org/org-habit /usr/share/emacs/site-lisp/org-mode/ob-lob hides /usr/share/emacs/24.1/lisp/org/ob-lob /usr/share/emacs/site-lisp/org-mode/org-xoxo hides /usr/share/emacs/24.1/lisp/org/org-xoxo /usr/share/emacs/site-lisp/org-mode/org-info hides /usr/share/emacs/24.1/lisp/org/org-info /usr/share/emacs/site-lisp/org-mode/org-latex hides /usr/share/emacs/24.1/lisp/org/org-latex /usr/share/emacs/site-lisp/org-mode/ob-ledger hides /usr/share/emacs/24.1/lisp/org/ob-ledger /usr/share/emacs/site-lisp/org-mode/org-irc hides /usr/share/emacs/24.1/lisp/org/org-irc /usr/share/emacs/site-lisp/org-mode/org-w3m hides /usr/share/emacs/24.1/lisp/org/org-w3m /usr/share/emacs/site-lisp/org-mode/ob hides /usr/share/emacs/24.1/lisp/org/ob /usr/share/emacs/site-lisp/org-mode/ob-matlab hides /usr/share/emacs/24.1/lisp/org/ob-matlab /usr/share/emacs/site-lisp/org-mode/ob-ditaa hides /usr/share/emacs/24.1/lisp/org/ob-ditaa /usr/share/emacs/site-lisp/org-mode/org-docview hides /usr/share/emacs/24.1/lisp/org/org-docview /usr/share/emacs/site-lisp/org-mode/ob-latex hides /usr/share/emacs/24.1/lisp/org/ob-latex /usr/share/emacs/site-lisp/org-mode/org hides /usr/share/emacs/24.1/lisp/org/org /usr/share/emacs/site-lisp/org-mode/org-timer hides /usr/share/emacs/24.1/lisp/org/org-timer /usr/share/emacs/site-lisp/org-mode/org-exp-blocks hides /usr/share/emacs/24.1/lisp/org/org-exp-blocks /usr/share/emacs/site-lisp/org-mode/ob-lilypond hides /usr/share/emacs/24.1/lisp/org/ob-lilypond /usr/share/emacs/site-lisp/org-mode/org-special-blocks hides /usr/share/emacs/24.1/lisp/org/org-special-blocks /usr/share/emacs/site-lisp/org-mode/ob-mscgen hides /usr/share/emacs/24.1/lisp/org/ob-mscgen /usr/share/emacs/site-lisp/org-mode/ob-comint hides /usr/share/emacs/24.1/lisp/org/ob-comint /usr/share/emacs/site-lisp/org-mode/org-gnus hides /usr/share/emacs/24.1/lisp/org/org-gnus /usr/share/emacs/site-lisp/org-mode/org-install hides /usr/share/emacs/24.1/lisp/org/org-install /usr/share/emacs/site-lisp/org-mode/org-compat hides /usr/share/emacs/24.1/lisp/org/org-compat /usr/share/emacs/site-lisp/org-mode/org-mew hides /usr/share/emacs/24.1/lisp/org/org-mew /usr/share/emacs/site-lisp/org-mode/org-rmail hides /usr/share/emacs/24.1/lisp/org/org-rmail /usr/share/emacs/site-lisp/org-mode/ob-screen hides /usr/share/emacs/24.1/lisp/org/ob-screen /usr/share/emacs/site-lisp/org-mode/ob-octave hides /usr/share/emacs/24.1/lisp/org/ob-octave /usr/share/emacs/site-lisp/org-mode/org-wl hides /usr/share/emacs/24.1/lisp/org/org-wl /usr/share/emacs/site-lisp/org-mode/ob-ocaml hides /usr/share/emacs/24.1/lisp/org/ob-ocaml /usr/share/emacs/site-lisp/org-mode/org-protocol hides /usr/share/emacs/24.1/lisp/org/org-protocol /usr/share/emacs/site-lisp/org-mode/org-pcomplete hides /usr/share/emacs/24.1/lisp/org/org-pcomplete /usr/share/emacs/site-lisp/org-mode/org-colview hides /usr/share/emacs/24.1/lisp/org/org-colview /usr/share/emacs/site-lisp/org-mode/org-ctags hides /usr/share/emacs/24.1/lisp/org/org-ctags /usr/share/emacs/site-lisp/org-mode/org-docbook hides /usr/share/emacs/24.1/lisp/org/org-docbook /usr/share/emacs/site-lisp/cedet/eieio/eieio-speedbar hides /usr/share/emacs/24.1/lisp/emacs-lisp/eieio-speedbar /usr/share/emacs/site-lisp/cedet/eieio/eieio hides /usr/share/emacs/24.1/lisp/emacs-lisp/eieio /usr/share/emacs/site-lisp/cedet/eieio/eieio-opt hides /usr/share/emacs/24.1/lisp/emacs-lisp/eieio-opt /usr/share/emacs/site-lisp/cedet/eieio/chart hides /usr/share/emacs/24.1/lisp/emacs-lisp/chart /usr/share/emacs/site-lisp/cedet/eieio/eieio-datadebug hides /usr/share/emacs/24.1/lisp/emacs-lisp/eieio-datadebug /usr/share/emacs/site-lisp/cedet/eieio/eieio-base hides /usr/share/emacs/24.1/lisp/emacs-lisp/eieio-base /usr/share/emacs/site-lisp/cedet/eieio/eieio-custom hides /usr/share/emacs/24.1/lisp/emacs-lisp/eieio-custom /usr/share/emacs/site-lisp/cedet/common/inversion hides /usr/share/emacs/24.1/lisp/cedet/inversion /usr/share/emacs/site-lisp/cedet/common/cedet-cscope hides /usr/share/emacs/24.1/lisp/cedet/cedet-cscope /usr/share/emacs/site-lisp/cedet/common/cedet hides /usr/share/emacs/24.1/lisp/cedet/cedet /usr/share/emacs/site-lisp/cedet/common/mode-local hides /usr/share/emacs/24.1/lisp/cedet/mode-local /usr/share/emacs/site-lisp/cedet/ede/ede hides /usr/share/emacs/24.1/lisp/cedet/ede /usr/share/emacs/site-lisp/cedet/common/cedet-global hides /usr/share/emacs/24.1/lisp/cedet/cedet-global /usr/share/emacs/site-lisp/cedet/semantic/semantic hides /usr/share/emacs/24.1/lisp/cedet/semantic /usr/share/emacs/site-lisp/cedet/srecode/srecode hides /usr/share/emacs/24.1/lisp/cedet/srecode /usr/share/emacs/site-lisp/cedet/common/cedet-idutils hides /usr/share/emacs/24.1/lisp/cedet/cedet-idutils /usr/share/emacs/site-lisp/cedet/common/pulse hides /usr/share/emacs/24.1/lisp/cedet/pulse /usr/share/emacs/site-lisp/cedet/common/data-debug hides /usr/share/emacs/24.1/lisp/cedet/data-debug /usr/share/emacs/site-lisp/cedet/common/cedet-files hides /usr/share/emacs/24.1/lisp/cedet/cedet-files Features: (shadow sort gnus-util mail-extr emacsbug message idna format-spec rfc822 mml mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail regexp-opt rfc2047 rfc2045 ietf-drums mm-util mail-prsvr mail-utils newcomment vc-git cperl-mode help-mode easymenu view evil evil-integration evil-maps evil-commands evil-cjk evil-types evil-digraphs evil-search evil-ex evil-macros evil-repeat evil-states evil-core advice help-fns advice-preload evil-common windmove rect evil-vars ring edmacro kmacro time-date tooltip ediff-hook vc-hooks lisp-float-type mwheel x-win x-dnd tool-bar dnd fontset image fringe lisp-mode register page menu-bar rfn-eshadow timer select scroll-bar mouse jit-lock font-lock syntax facemenu font-core frame cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer loaddefs button faces cus-face files text-properties overlay sha1 md5 base64 format env code-pages mule custom widget hashtable-print-readable backquote make-network-process dbusbind dynamic-setting font-render-setting move-toolbar gtk x-toolkit x multi-tty emacs)
[Message part 2 (text/html, inline)]
bug-gnu-emacs <at> gnu.org
:bug#11966
; Package emacs
.
(Wed, 18 Jul 2012 07:35:02 GMT) Full text and rfc822 format available.Message #8 received at 11966 <at> debbugs.gnu.org (full text, mbox):
From: Stefan Monnier <monnier <at> IRO.UMontreal.CA> To: JC Petkovich <jcpetkovich <at> gmail.com> Cc: 11966 <at> debbugs.gnu.org Subject: Re: bug#11966: 24.1; cperl-mode with evil-mode causes hang on syntax-propertize Date: Wed, 18 Jul 2012 03:28:11 -0400
> Emacs hangs on the creation of a newline with evil-ret when in a cperl > buffer with some POD documentation after the __END__. This doesn't > appear to be a bug in evil, but instead a bug in cperl or > syntax-propertize, > but I can't tell for sure. Before I dive further into this, can you first check whether the bug-fix for bug#11739 (see patch below) happens to fix your problem as well? Stefan === modified file 'lisp/progmodes/cperl-mode.el' --- lisp/progmodes/cperl-mode.el 2012-01-19 07:21:25 +0000 +++ lisp/progmodes/cperl-mode.el 2012-07-06 20:57:58 +0000 @@ -8951,14 +8951,15 @@ (setq cperl-syntax-done-to (min cperl-syntax-done-to beg)))) (defun cperl-update-syntaxification (from to) - (if (and cperl-use-syntax-table-text-property - cperl-syntaxify-by-font-lock - (or (null cperl-syntax-done-to) - (< cperl-syntax-done-to to))) - (progn - (save-excursion - (goto-char from) - (cperl-fontify-syntaxically to))))) + (cond + ((not cperl-use-syntax-table-text-property) nil) + ((fboundp 'syntax-propertize) (syntax-propertize to)) + ((and cperl-syntaxify-by-font-lock + (or (null cperl-syntax-done-to) + (< cperl-syntax-done-to to))) + (save-excursion + (goto-char from) + (cperl-fontify-syntaxically to))))) (defvar cperl-version (let ((v "Revision: 6.2"))
bug-gnu-emacs <at> gnu.org
:bug#11966
; Package emacs
.
(Wed, 18 Jul 2012 07:49:02 GMT) Full text and rfc822 format available.Message #11 received at 11966 <at> debbugs.gnu.org (full text, mbox):
From: JC Petkovich <jcpetkovich <at> gmail.com> To: Stefan Monnier <monnier <at> iro.umontreal.ca> Cc: 11966 <at> debbugs.gnu.org Subject: Re: bug#11966: 24.1; cperl-mode with evil-mode causes hang on syntax-propertize Date: Wed, 18 Jul 2012 03:41:54 -0400
[Message part 1 (text/plain, inline)]
I'm afraid the patch does not appear to do anything. Same symptoms. Same procedure was used to reproduce, using a patched cperl-mode.el instead (I made sure it was not loading the old elc, I moved it elsewhere). Jean-Christophe Petkovich On Wed, Jul 18, 2012 at 3:28 AM, Stefan Monnier <monnier <at> iro.umontreal.ca>wrote: > > Emacs hangs on the creation of a newline with evil-ret when in a cperl > > buffer with some POD documentation after the __END__. This doesn't > > appear to be a bug in evil, but instead a bug in cperl or > > syntax-propertize, > > but I can't tell for sure. > > Before I dive further into this, can you first check whether the bug-fix > for bug#11739 (see patch below) happens to fix your problem as well? > > > Stefan > > > === modified file 'lisp/progmodes/cperl-mode.el' > --- lisp/progmodes/cperl-mode.el 2012-01-19 07:21:25 +0000 > +++ lisp/progmodes/cperl-mode.el 2012-07-06 20:57:58 +0000 > @@ -8951,14 +8951,15 @@ > (setq cperl-syntax-done-to (min cperl-syntax-done-to beg)))) > > (defun cperl-update-syntaxification (from to) > - (if (and cperl-use-syntax-table-text-property > - cperl-syntaxify-by-font-lock > - (or (null cperl-syntax-done-to) > - (< cperl-syntax-done-to to))) > - (progn > - (save-excursion > - (goto-char from) > - (cperl-fontify-syntaxically to))))) > + (cond > + ((not cperl-use-syntax-table-text-property) nil) > + ((fboundp 'syntax-propertize) (syntax-propertize to)) > + ((and cperl-syntaxify-by-font-lock > + (or (null cperl-syntax-done-to) > + (< cperl-syntax-done-to to))) > + (save-excursion > + (goto-char from) > + (cperl-fontify-syntaxically to))))) > > (defvar cperl-version > (let ((v "Revision: 6.2")) > >
[Message part 2 (text/html, inline)]
Stefan Monnier <monnier <at> IRO.UMontreal.CA>
:JC Petkovich <jcpetkovich <at> gmail.com>
:Message #16 received at 11966-done <at> debbugs.gnu.org (full text, mbox):
From: Stefan Monnier <monnier <at> IRO.UMontreal.CA> To: JC Petkovich <jcpetkovich <at> gmail.com> Cc: 11966-done <at> debbugs.gnu.org, Ilya Zakharevich <ilyaz <at> cpan.org> Subject: Re: bug#11966: 24.1; cperl-mode with evil-mode causes hang on syntax-propertize Date: Wed, 18 Jul 2012 05:35:23 -0400
Version:24.2 > Emacs hangs on the creation of a newline with evil-ret when in a cperl > buffer with some POD documentation after the __END__. This doesn't > appear to be a bug in evil, but instead a bug in cperl or > syntax-propertize, Indeed, I could reproduce it without evil. It seems to be a bug in cperl-mode, tho maybe it can only be triggered via syntax-propertize. In any case, I've installed the patch below into the emacs-24 branch, and that should fix it. Thanks you, Stefan === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2012-07-09 13:54:50 +0000 +++ lisp/ChangeLog 2012-07-18 09:32:41 +0000 @@ -1,3 +1,8 @@ +2012-07-18 Stefan Monnier <monnier <at> iro.umontreal.ca> + + * progmodes/cperl-mode.el (cperl-unwind-to-safe): Don't inf-loop at end + of narrowed buffer (bug#11966). + 2012-07-09 Stefan Monnier <monnier <at> iro.umontreal.ca> * progmodes/sh-script.el (sh-syntax-propertize-function): Fix last === modified file 'lisp/progmodes/cperl-mode.el' --- lisp/progmodes/cperl-mode.el 2012-06-21 16:49:21 +0000 +++ lisp/progmodes/cperl-mode.el 2012-07-18 09:31:14 +0000 @@ -3498,7 +3498,8 @@ (if end ;; Do the same for end, going small steps (save-excursion - (while (and end (get-text-property end 'syntax-type)) + (while (and end (< end (point-max)) + (get-text-property end 'syntax-type)) (setq pos end end (next-single-property-change end 'syntax-type nil (point-max))) (if end (progn (goto-char end)
Debbugs Internal Request <help-debbugs <at> gnu.org>
to internal_control <at> debbugs.gnu.org
.
(Wed, 15 Aug 2012 11:24:05 GMT) Full text and rfc822 format available.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.