Title [Bug: 21.5-b28] cperl-mode fontification aborts or hangs xemacs
Type defect Module core code 21.5, perl-modes
Severity inconvenience Platform N/A
Keywords Nosy List eda
These controls should only be changed by committers and tracker administrators.
Status new   Reason
Superseder   Submitted 2008-11-20.12:47:52
Priority normal   Assigned To

Created on 2008-11-29.06:25:23 by eda1, last changed 2009-03-06.13:56:06 by stephen.

msg886 [hidden] ([hidden]) Date: 2008-11-29.06:25:23
  Message-ID: <7A5C308A1A3D554B8B8C0E331F7D2BB10ED31B@wcl-exc.wcl.local>
Dear Bug Team!

The following perl code trips up font-lock-mode in cperl-mode:

use warnings;
use strict;
use 5.010;
while (<>) {

To reproduce, run 'xemacs -nw -vanilla test-file' and type or paste in
this code, then

   M-x cperl-mode RET
   M-x font-lock-mode RET
   M-x font-lock-fontify-buffer RET

XEmacs prints in the minibuffer:

   Fontifying test... aborted.aborted.

Originally, when I entered this code it caused xemacs to hang so that
no keypress (not even C-x C-x or C-g) would do anything.  But that has
been harder to reproduce.  I hope that if you fix whatever bug causes
the 'aborted' message then the hang will also be fixed.

I understand that the code is not a correct perl program, but fontification
should cope with that without errors or warnings, since it's to be
expected that the buffer contents will be invalid perl during editing.

Slightly different errors can be caused if you put the buffer in
cperl-mode and font-lock-mode before entering the program text.


System Info to help track down your bug:

uname -a: Linux 2.6.18-53.1.6.el5xen #1 SMP Wed Jan 16 04:10:44 EST 2008 i686 athlon i386 GNU/Linux

./configure  '--build=i386-redhat-linux-gnu' '--host=i386-redhat-linux-gnu' '--target=i386-redhat-linux-gnu' '--program-prefix=' '--prefix=/usr' '--exec-prefix=/usr' '--bindir=/usr/bin' '--sbindir=/usr/sbin' '--sysconfdir=/etc' '--datadir=/usr/share' '--includedir=/usr/include' '--libdir=/usr/lib' '--libexecdir=/usr/libexec' '--localstatedir=/var' '--sharedstatedir=/usr/com' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--mandir=/usr/share/man/man1' '--with-archlibdir=/usr/lib/xemacs-21.5-b28/i386-redhat-linux' '--with-moduledir=/usr/lib/xemacs-21.5-b28/i386-redhat-linux/modules' '--with-lispdir=/usr/share/xemacs-21.5-b28/lisp' '--with-etcdir=/usr/share/xemacs-21.5-b28/etc' '--with-system-packages=/usr/share/xemacs' '--without-msw' '--with-mule' '--with-clash-detection' '--with-database=no' '--without-ldap' '--without-postgresql' '--with-mail-locking=lockf' '--with-pop' '--without-hesiod' '--with-pdump' '--with-debug' '--with-error-checking=none' '--with-docdir=/usr!
 /lib/xemacs-21.5-b28/doc' '--with-xfs' '--with-athena=next' '--with-menubars=lucid' '--with-widgets=athena' '--with-dialogs=athena' '--with-scrollbars=lucid' '--with-xim=xlib' '--without-wnn' 'build_alias=i386-redhat-linux-gnu' 'host_alias=i386-redhat-linux-gnu' 'target_alias=i386-redhat-linux-gnu' 'CFLAGS=-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -fno-strict-aliasing'

XEmacs 21.5-b28 "fuki"  configured for `i386-redhat-linux'.

Compilation Environment and Installation Defaults:
  Source code location:              /builddir/build/BUILD/xemacs-21.5.28
  Installation prefix:               /usr
  Operating system description file: `s/linux.h'
  Machine description file:          `m/intel386.h'
  Compiler version:                  gcc (GCC) 4.3.0 20080218 (Red Hat 4.3.0-0.10)
    - GCC specs file:                specs.
    - Compiler command:              gcc   -Wall -Wno-switch -Wundef -Wsign-compare -Wno-char-subscripts -Wpacked -Wunused-parameter -g  -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -fno-strict-aliasing
  libc version:                      glibc-2.7.90-7.i686
  Relocating allocator for buffers:  no
  GNU version of malloc:             yes
    - Using Doug Lea's new malloc from the GNU C Library.

Window System:
  Compiling in support for the X window system:
    - X Windows headers location:                 
    - X Windows libraries location:               
    - Handling WM_COMMAND properly.
  Compiling in support for the Athena widget set:
    - Athena headers location:                    X11/neXtaw
    - Athena library to link:                     neXtaw
  Using Lucid menubars.
  Using Lucid scrollbars.
  Using Athena dialog boxes.
  Using Athena native widgets.

  Compiling in support for ncurses.
  Compiling in support for GPM (General Purpose Mouse).

  Compiling in support for GIF  images (builtin).
  Compiling in support for XPM  images.
  Compiling in support for PNG  images.
  Compiling in support for JPEG images.
  Compiling in support for TIFF images.
  Compiling in support for X-Face message headers.

  Compiling in support for sound (native).
  Compiling in support for ALSA (Advanced Linux Sound Architecture).


  Compiling in support for Mule (multi-lingual Emacs).
  Compiling in support for XIM (X11R5+ I18N input method).
    - Using raw Xlib to provide XIM support.
    - Using XFontSet to provide bilingual menubar.
  Compiling in support for Canna on Mule.

  Compiling in support for POP mail retrieval.
  Compiling in support for "lockf" mail spool file locking method.

Other Features:
  Inhibiting IPv6 canonicalization at startup.
  Compiling in support for dynamic shared object modules.
  Using the new GC mark algorithms (KKCC).
  WARNING: ---------------------------------------------------------
  WARNING: The new algorithms are experimental. They are enabled by
  WARNING: default for this release. Use `--disable-kkcc' to
  WARNING: turn it off.
  WARNING: ---------------------------------------------------------
  Using the new portable dumper.
  Dumping into executable.
  Compiling in support for extra debugging code.

Load-Path Lisp Shadows:

Installed XEmacs Packages:
(zenirc ver: 1.16 upstream: 2.112)
(xwem ver: 1.22 upstream: lg at
(xslt-process ver: 1.12 upstream: 1.2.1)
(xslide ver: 1.09 upstream: 0.2.2)
(xlib ver: 1.14 upstream: lg at
(xetla ver: 1.01 upstream: steve at
(xemacs-devel ver: 1.75 upstream: No-Upstream-Ver)
(xemacs-base ver: 2.1 upstream: No-Upstream-Ver)
(x-symbol ver: 1.1 upstream: 4.5.1)
(w3 ver: 1.33 upstream: 4.0pre47)
(vm ver: 7.22 upstream: 7.17)
(viper ver: 1.55 upstream: 3.09)
(view-process ver: 1.13 upstream: 2.4)
(vhdl ver: 1.22 upstream: 3.33.12)
(vc ver: 1.41 upstream: No-Upstream-Ver)
(tramp ver: 1.37 upstream: 2.0.55)
(tpu ver: 1.14 upstream: 4.2X)
(tm ver: 1.38 upstream: No-Upstream-Ver)
(time ver: 1.14 upstream: 1.17)
(textools ver: 1.15 upstream: No-Upstream-Ver)
(text-modes ver: 1.92 upstream: No-Upstream-Ver)
(texinfo ver: 1.3 upstream: No-Upstream-Ver)
(supercite ver: 1.21 upstream: 3.55x3)
(strokes ver: 1.1 upstream: No-Upstream-Ver)
(speedbar ver: 1.28 upstream: 0.14beta4)
(slider ver: 1.15 upstream: 0.3x1)
(sieve ver: 1.18 upstream: No-Upstream-Ver)
(sh-script ver: 1.22 upstream: 2.0f)
(sgml ver: 1.11 upstream: No-Upstream-Ver)
(semantic ver: 1.2 upstream: 1.4.4)
(scheme ver: 1.15 upstream: No-Upstream-Ver)
(ruby-modes ver: 1.02 upstream: 1.6.8)
(rmail ver: 1.14 upstream: No-Upstream-Ver)
(riece ver: 1.23 upstream: 3.1.2)
(reftex ver: 1.34 upstream: 4.21)
(re-builder ver: 1.05 upstream: 1.20)
(python-modes ver: 1.08 upstream: No-Upstream-Ver)
(psgml ver: 1.44 upstream: 1.3.1)
(ps-print ver: 1.11 upstream: 6.5.6)
(prog-modes ver: 2.1 upstream: No-Upstream-Ver)
(pgg ver: 1.06 upstream: 0.1)
(perl-modes ver: 1.09 upstream: No-Upstream-Ver)
(pcomplete ver: 1.04 upstream: 1.1.6)
(pcl-cvs ver: 1.67 upstream: R-2_9_9)
(pc ver: 1.28 upstream: No-Upstream-Ver)
(os-utils ver: 1.39 upstream: No-Upstream-Ver)
(oo-browser ver: 1.04 upstream: 4.08)
(ocaml ver: 0.06 upstream: 3.06)
(net-utils ver: 1.52 upstream: N/A)
(misc-games ver: 1.19 upstream: No-Upstream-Ver)
(mine ver: 1.16 upstream: 1.9)
(mh-e ver: 1.29 upstream: 7.4.2)
(mailcrypt ver: 2.14 upstream: 3.5.8)
(mail-lib ver: 1.79 upstream: No-Upstream-Ver)
(ispell ver: 1.32 upstream: 3.6)
(ilisp ver: 1.34 upstream: 5.12.0)
(igrep ver: 1.14 upstream: 2.111)
(idlwave ver: 1.32 upstream: 5.1)
(ibuffer ver: 1.09 upstream: No-Upstream-Ver)
(hyperbole ver: 1.16 upstream: 4.18)
(hm--html-menus ver: 1.23 upstream: 5.9)
(haskell-mode ver: 1.11 upstream: 2.1)
(gnats ver: 1.17 upstream: 3.101)
(games ver: 1.17 upstream: 1.04)
(fsf-compat ver: 1.15 upstream: No-Upstream-Ver)
(fortran-modes ver: 1.05 upstream: No-Upstream-Ver)
(forms ver: 1.15 upstream: 2.37)
(footnote ver: 1.16 upstream: 0.18x)
(eudc ver: 1.39 upstream: 1.32)
(eterm ver: 1.17 upstream: No-Upstream-Ver)
(eshell ver: 1.1 upstream: 2.4.1)
(escreen ver: 1.01 upstream: 1.16)
(erc ver: 0.21 upstream: Version 5.1.2 Revision: 1.796.2.6)
(emerge ver: 1.11 upstream: No-Upstream-Ver)
(eieio ver: 1.05 upstream: 0.17)
(efs ver: 1.33 upstream: 1.23)
(edt ver: 1.13 upstream: No-Upstream-Ver)
(edit-utils ver: 2.37 upstream: No-Upstream-Ver)
(ediff ver: 1.68 upstream: 2.75)
(edebug ver: 1.22 upstream: No-Upstream-Ver)
(ecrypto ver: 0.2 upstream: 2.0)
(ecb ver: 1.22 upstream: 2.31)
(docbookide ver: 0.08 upstream: 0.1)
(dired ver: 1.17 upstream: 7.13)
(dictionary ver: 1.16 upstream: 1.8)
(debug ver: 1.18 upstream: No-Upstream-Ver)
(cookie ver: 1.15 upstream: No-Upstream-Ver)
(clearcase ver: 1.1 upstream: /main/laptop/165)
(cc-mode ver: 1.45 upstream: 5.30.10)
(calendar ver: 1.32 upstream: No-Upstream-Ver)
(calc ver: 1.26 upstream: 2.02fX3)
(c-support ver: 1.22 upstream: No-Upstream-Ver)
(build ver: 1.14 upstream: 2.02)
(bbdb ver: 1.32 upstream: 2.35)
(auctex ver: 1.47 upstream: 11.55)
(apel ver: 1.32 upstream: 10.6)
(ada ver: 1.14 upstream: 2.27)
(mule-base ver: 1.49 upstream: No-Upstream-Ver)
(lookup ver: 1.15 upstream: 1.0)
(leim ver: 1.24 upstream: No-Upstream-Ver)
(latin-unity ver: 1.2 upstream: 1.20)
(egg-its ver: 1.27 upstream: No-Upstream-Ver)
(edict ver: 1.16 upstream: 0.9.9)

Installed Modules:


(mail-abbrevs xemacsbug shadow sendmail rfc822 wid-edit font-lock
cperl-mode cus-face efs-cu zenirc-autoloads xwem-autoloads
xslt-process-autoloads xslide-autoloads xlib-autoloads xetla-autoloads
xemacs-devel-autoloads xemacs-base-autoloads x-symbol-autoloads
w3-autoloads vm-autoloads viper-autoloads view-process-autoloads
vhdl-autoloads vc-autoloads tramp-autoloads tpu-autoloads tm-autoloads
time-autoloads textools-autoloads text-modes-autoloads
texinfo-autoloads supercite-autoloads strokes-autoloads
speedbar-autoloads slider-autoloads sieve-autoloads
sh-script-autoloads sgml-autoloads semantic-autoloads scheme-autoloads
ruby-modes-autoloads rmail-autoloads riece-autoloads reftex-autoloads
re-builder-autoloads python-modes-autoloads psgml-autoloads
ps-print-autoloads prog-modes-autoloads pgg-autoloads
perl-modes-autoloads pcomplete-autoloads pcl-cvs-autoloads
pc-autoloads os-utils-autoloads oo-browser-autoloads ocaml-autoloads
net-utils-autoloads misc-games-autoloads mine-autoloads mh-e-autoloads
mailcrypt-autoloads mail-lib-autoloads ispell-autoloads
ilisp-autoloads igrep-autoloads idlwave-autoloads ibuffer-autoloads
hyperbole-autoloads hm--html-menus-autoloads haskell-mode-autoloads
gnus-autoloads gnats-autoloads games-autoloads fsf-compat-autoloads
fortran-modes-autoloads forms-autoloads footnote-autoloads
eudc-autoloads eterm-autoloads eshell-autoloads escreen-autoloads
erc-autoloads emerge-autoloads eieio-autoloads efs-autoloads
edt-autoloads edit-utils-autoloads ediff-autoloads edebug-autoloads
ecrypto-autoloads ecb-autoloads docbookide-autoloads dired-autoloads
dictionary-autoloads debug-autoloads cookie-autoloads
clearcase-autoloads cc-mode-autoloads calendar-autoloads
calc-autoloads c-support-autoloads build-autoloads bbdb-autoloads
auctex-autoloads apel-autoloads ada-autoloads mule-base-autoloads
lookup-autoloads leim-autoloads latin-unity-autoloads
egg-its-autoloads edict-autoloads modules-autoloads mule-autoloads
auto-autoloads auto-show fontl-hooks canna-leim tibetan slovenian
czech romanian lao devanagari indian ccl code-cmds gutter-items
menubar-items x-menubar mode-motion mouse behavior itimer auto-save
lisp-mode easymenu easy-mmode iso8859-1 page buff-menu lib-complete
loadhist cus-file derived newcomment rsz-minibuf env text-props frame
obsolete cus-start custom widget cl-extra cl cl-19 packages backquote
unicode lucid-scrollbars cut-buffer lucid-menubars athena-dialogs x
c-balloon-help tty-frames tty toolbar native-sound alsa-sound
scrollbar unix-processes multicast network-streams subprocesses
modules menu-accelerator-support menubar md5 xemacs xim mule gutter
tiff png gif jpeg xface xpm xbm lisp-float-type file-coding linux
dialog devices window-system base64)

Recent keystrokes:

} RET ESC x p e r l - m o SPC RET ESC x f o n SPC l 
SPC m SPC RET C-x k RET ESC x C-g C-g C-x k RET y e 
s RET ESC x r e p o r t - x e m a c s - b u g C-g ESC 
x a b o SPC i SPC BS u SPC - BS x e m SPC RET ESC x 
r e p o t y BS BS r t - x e m a c s - b u g RET

Recent messages (most recent first):


Defaulting to the GNU Emacs-derived `sendmail.el' mail client. This facility,
while part of base XEmacs, is heinously underfeatured, and not going to get
better in the medium term. We include it so that bug reports work without
packages; we suggest that you choose and/or install one of the other mail
clients from packages if you're doing something other than M-x
report-xemacs-bug , or even if you are reporting bugs regularly.

To choose a package from those installed, click on "Options" ->
"Internet" -> "Compose Mail With ..." and decide on one from the
list. Gnus and VM are full-featured and have active user communities.

To disable this warning and stick with the old behavior, you can explicitly
initialize `mail-user-agent' to 'sendmail-user-agent . 
Loading xemacsbug...done
Loading xemacsbug...
Loading about...done
Loading about...
Making completion list...
Command attempted to use minibuffer while in minibuffer
Fontifying test... aborted.aborted.
End of `s{ ... }
Date User Action Args
2009-03-06 13:56:06stephensetstatus: new
severity: inconvenience
nosy: + eda, - eda1
module: + core code 21.5, perl-modes
priority: normal
platform: + N/A
type: defect
2008-11-29 06:25:23eda1create