This bug report will be sent to the XEmacs Development Team,
not to your local site managers!!
Please write in English, because the XEmacs maintainers do not have
translators to read other languages for them.
In XEmacs 21.2 "Dionysos" [Lucid] (i586-pc-linux) of Sun May 23 1999 on anton9.ida.liu.se
configured using `configure --prefix=/usr/local --with-xpm --with-xface --with-database=gnudbm,berkdb --with-xfs --with-png --with-gif --with-jpeg --with-tiff --dynamic=yes --site-prefixes=/usr/local/BerkeleyDB'
Please describe exactly what actions triggered the bug
and the precise symptoms of the bug:
The following bit of elisp consistently causes XEmacs 21.2-b18 to dump
core. Enjoy:
(switch-to-buffer "FOO")
(insert "123456")
(defun acf (start end len)
(widen)
(goto-char 4)
(delete-char 1))
(let ((after-change-functions '(acf)))
(save-restriction
(narrow-to-region 4 4)
(transpose-lines 1)))
The idea is to delete the position where point is in the
after-change-functions. The above code works equally well when the
narrowed region is more than zero length and the delete-char is
replaced with a delete-region that deletes a region larger than the
restriction.
Configuration data, Lisp backtrace and C backtrace follow below.
Configuration:
uname -a: Linux anton9.ida.liu.se 2.0.36 #1 Wed May 19 16:00:25 CEST 1999 i586 unknown
./configure '--prefix=/usr/local' '--with-xpm' '--with-xface' '--with-database=gnudbm,berkdb' '--with-xfs' '--with-png' '--with-gif' '--with-jpeg' '--with-tiff' '--dynamic=yes' '--site-prefixes=/usr/local/BerkeleyDB'
XEmacs 21.2-b14 "Dionysos" configured for `i586-pc-linux'.
Where should the build process find the source code? /home/davby/xemacs-21.2.14
What installation prefix should install use? /usr/local
What operating system and machine description files should XEmacs use?
`s/linux.h' and `m/intel386.h'
What compiler should XEmacs be built with? gcc -g -O3 -Wall -Wno-switch
Should XEmacs use the GNU version of malloc? yes
(Using Doug Lea's new malloc from the GNU C Library.)
Should XEmacs use the relocating allocator for buffers? yes
What window system should XEmacs use? x11
Where do we find X Windows header files? /usr/X11/include
Where do we find X Windows libraries? /usr/X11/lib
Additional prefixes: /usr/local/BerkeleyDB
Compiling in support for XAUTH.
Compiling in support for XPM images.
Compiling in support for PNG image handling.
Compiling in support for (builtin) GIF image handling.
Compiling in support for JPEG image handling.
Compiling in support for TIFF image handling.
Compiling in support for X-Face message headers.
Compiling in native sound support.
Compiling in support for Berkeley DB.
Compiling in support for GNU DBM.
Compiling in support for ncurses.
Compiling in support for GPM (General Purpose Mouse).
Using XFontSet to provide bilingual menubar.
Compiling in support for proper session-management.
Using Lucid menubars.
Using Lucid scrollbars.
Using Motif dialog boxes.
Compiling in DLL support.
movemail will use "dot-locking" for locking mail spool files.
Compiling in extra code for debugging.
WARNING: ---------------------------------------------------------
WARNING: Compiling in support for runtime error checking.
WARNING: XEmacs will run noticeably more slowly as a result.
WARNING: Error checking is on by default for XEmacs beta releases.
WARNING: ---------------------------------------------------------
Lisp backtrace follows:
self-insert-command(1)
# (unwind-protect ...)
# bind (last-command-char auto-fill-function flag was-page-start beforepos arg)
newline()
# bind (arg)
#<compiled-function (arg) "...(20)" [arg 1 nil newline] 2>(1)
# bind (start1 end1 start2 end2 arg mover)
transpose-subr(#<compiled-function (arg) "...(20)" [arg 1 nil newline] 2> 1)
# bind (arg)
transpose-lines(1)
# (unwind-protect ...)
(save-restriction (narrow-to-region 4 4) (transpose-lines 1))
)
# bind (after-change-functions)
(let ((after-change-functions ...)) (save-restriction (narrow-to-region 4 4) (transpose-lines 1)))
)
# bind (current-load-list)
# (unwind-protect ...)
# bind (load-file-name)
# (unwind-protect ...)
# (unwind-protect ...)
# (unwind-protect ...)
# (unwind-protect ...)
# (unwind-protect ...)
load-internal("/home/davby/bug2.el" nil t nil nil nil)
# bind (nosuffix nomessage noerror file)
load("/home/davby/bug2.el" nil t)
# bind (file arg)
command-line-do-load("-l")
# bind (dir file-count line end-of-options first-file-buffer file-p arg tem)
command-line-1()
# bind (command-line-args-left)
command-line()
# (unwind-protect ...)
normal-top-level()
# (condition-case ... . error)
# (catch top-level ...)
zsh: 2612 abort (core dumped) xemacs -q -l bug2.el
C backtrace follows:
#0 0x40346781 in ?? () from /lib/libc.so.6
#1 0xbfffe6ec in ?? ()
#2 0x403477bf in ?? () from /lib/libc.so.6
#3 0x808d1f2 in assert_failed () at emacs.c:2642
#4 0x8121440 in bufpos_to_bytind (buf=0x85dd4f0, x=8) at insdel.c:1117
#5 0x80d8399 in report_extent_modification (buffer=140367088, start=7, end=8,
inside=0x82939ac, afterp=1) at extents.c:2275
#6 0x811da68 in signal_after_change (buf=0x85dd4f0, start=7, orig_end=7,
new_end=8) at insdel.c:2298
#7 0x811ee66 in buffer_insert_string_1 (buf=0x85dd4f0, pos=7,
nonreloc=0xbfffe9df "\n\020êÿ¿®\013\a\bðÔ]\bÿÿÿÿ\n", reloc=137119788,
offset=0, length=1, flags=0) at insdel.c:2571
#8 0x8121e04 in buffer_insert_emacs_char_1 (buf=0x85dd4f0, pos=-1, ch=10,
flags=0) at insdel.c:2627
#9 0x8070bae in internal_self_insert (c1=10, noautofill=0) at cmds.c:415
#10 0x8070931 in Fself_insert_command (n=3) at cmds.c:308
#11 0x8093835 in Ffuncall (nargs=2, args=0xbfffeaa8) at eval.c:3189
#12 0x8063fb6 in execute_optimized_program (
program=0x85c1330 "ÀÁ`\"\210o?.n+Â`SÃ\"?#Â`SÄ\"?\eÂ`SÅ\"?\023Â`SÆ\"?\013Ç`!®\002È`ÉZWn\005Ê\016\013!`\036\f\036\r\211\036\016«\005ÏÐ!\210Ñ\016\022®\003\016\016?\003\016\023\036\023\036\024Õ\216Ö×\016\022!!\210+\016\016«\005ÏÐ!\210\016\030«6`\016\022«\a×\016\022!ª\002ÐZ\036\031Ú\016\031Æ\"\036\eÜ\016\031`ÝÞ$\210\016\e<«\022Ý\016\es¬\fÜ\016\031`ÆÝ\016\eB$\210*\016\016¬\034\212\016\fb\210ßy\210Êà!«\016á ßV«\b`Á\177\210`|\210)\016\016«"..., stack_depth=7,
constants_data=0x83c7c54) at bytecode.c:754
#13 0x8063b50 in funcall_compiled_function (fun=138155828, nargs=0,
args=0xbfffebb8) at bytecode.c:530
#14 0x80939d3 in Ffuncall (nargs=1, args=0xbfffebb4) at eval.c:3221
#15 0x8063fb6 in execute_optimized_program (
program=0x85c1300 "\bÁU«\rÂ\177\210m«\004Ã \207Áu\207\by\207ù",
stack_depth=2, constants_data=0x83d3b6c) at bytecode.c:754
#16 0x8063b50 in funcall_compiled_function (fun=138200012, nargs=1,
args=0xbfffecb0) at bytecode.c:530
#17 0x80939d3 in Ffuncall (nargs=2, args=0xbfffecac) at eval.c:3221
#18 0x8063fb6 in execute_optimized_program (
program=0x85c1250 "À\211\211\211\031\032\e\034\rÆU«+\212\016\aÈ!\210`\021\016\aÉ!\210`\022ÊË!b\210\016\aÈ!\210`\023\016\aÉ!\210`\024Ì \210)ÍË!\210\rÆV«)\016\aÉ!\210`\024\016\aÈ!\210`\023\016\aÈ!\210`\021\016\aÉ!\210`\022Ì \210\tb\210\rS\211\025ªÕ\rÆW&\016\aÉ!\210`\022\016\aÉ!\210`\024\016\aÈ!\210`\023\016\aÈ!\210`\021Ì \210\rT\211\025ªØ,\207", stack_depth=5, constants_data=0x83d3bbc)
at bytecode.c:754
#19 0x8063b50 in funcall_compiled_function (fun=138200076, nargs=2,
args=0xbfffedb4) at bytecode.c:530
#20 0x80939d3 in Ffuncall (nargs=3, args=0xbfffedb0) at eval.c:3221
#21 0x8063fb6 in execute_optimized_program (program=0x85c1228 "ÀÁ\n\"\207",
stack_depth=3, constants_data=0x83d3b94) at bytecode.c:754
#22 0x8063b50 in funcall_compiled_function (fun=138200044, nargs=1,
args=0xbfffee40) at bytecode.c:530
#23 0x8093030 in Feval (form=139710052) at eval.c:3045
#24 0x808e416 in Fprogn (args=139710036) at eval.c:761
#25 0x8087264 in Fsave_restriction (body=139710036) at editfns.c:2138
#26 0x8092ad3 in Feval (form=139709812) at eval.c:2958
#27 0x808e416 in Fprogn (args=139710820) at eval.c:761
#28 0x808f118 in Flet (args=139709796) at eval.c:926
#29 0x8092ad3 in Feval (form=139713532) at eval.c:2958
#30 0x8130057 in readevalloop (readcharfun=140331608, sourcename=140249724,
evalfun=0x809224c <Feval>, printflag=0) at lread.c:1454
#31 0x812e541 in Fload_internal (file=140249724, no_error=137119788,
nomessage=137119816, nosuffix=137119788, codesys=137119788,
used_codesys=137119788) at lread.c:743
#32 0x80938b9 in Ffuncall (nargs=7, args=0xbffff428) at eval.c:3189
#33 0x8063fb6 in execute_optimized_program (
program=0x83f77b8 "À\t\n\013\fÅ\211&\006\207", stack_depth=7,
constants_data=0x8421a5c) at bytecode.c:754
#34 0x8063b50 in funcall_compiled_function (fun=138545708, nargs=3,
args=0xbffff538) at bytecode.c:530
#35 0x80939d3 in Ffuncall (nargs=4, args=0xbffff534) at eval.c:3221
#36 0x8063fb6 in execute_optimized_program (
program=0x85d4a38 "\b\211A\020@\031ÂÃ\t!!«\005Ã\t!\021Ä\tÅÆ#)\207¼ËM\by",
stack_depth=4, constants_data=0x840e3e4) at bytecode.c:754
#37 0x8063b50 in funcall_compiled_function (fun=138422108, nargs=1,
args=0xbffff638) at bytecode.c:530
#38 0x80939d3 in Ffuncall (nargs=2, args=0xbffff634) at eval.c:3221
#39 0x8063fb6 in execute_optimized_program (program=0x85d4918 "\b¬>\t?\205ö",
stack_depth=8, constants_data=0x840e8fc) at bytecode.c:754
#40 0x8063b50 in funcall_compiled_function (fun=138422524, nargs=0,
args=0xbffff748) at bytecode.c:530
#41 0x80939d3 in Ffuncall (nargs=1, args=0xbffff744) at eval.c:3221
#42 0x8063fb6 in execute_optimized_program (
program=0x8340408 "\bA\031ÂÃ\034\035Æ\t!\021ÇÈ!«\004É \210\016\n«\020\016\013¬\fÌÍÎ\016\n!ÏQ! \210Ð \210*Ñ \210rÒÓ!q\210Ô \210ÕÖ!\210\016\027Øa«\005\016\031 \210)Ú Ûa«\bË ¬\004Ü \210Ý \210Ö\026\036Ë \004ßÃ!)\207Ý;@9\001",
stack_depth=4, constants_data=0x840e6a4) at bytecode.c:754
#43 0x8063b50 in funcall_compiled_function (fun=138422332, nargs=0,
args=0xbffff848) at bytecode.c:530
---Type <return> to continue, or q <return> to quit---
#44 0x80939d3 in Ffuncall (nargs=1, args=0xbffff844) at eval.c:3221
#45 0x8063fb6 in execute_optimized_program (
program=0x834fd80 "\b«\005ÁÂ!\207Ã\020Ä \211\035«\030\rG\016\006GW«\020Ç\016\006!Ç\r!k«\006È\r!\026\006)É\016\006!\026\006Ê \210Ë \210\016\f®\aÍÎ!\002Ã\036\fÏ\016\020\016\021\"\026\022\016\f«\nÓÔÕ\016\022\"Ö\"\210\016\022¬\006× \210ª\fØ\016\022\016\031\016\032\016\f$\210Û \210)\016\034¬\022\016\035«\016Þßà\016!!\016\035\"âÃ#\210\016\034¬\024\016\031¬\006ã\016$!\210ã\016%!\210ã\016&!\210ç\216è )\207,\b ãK\b¡", stack_depth=6, constants_data=0x840e51c) at bytecode.c:754
#46 0x8063b50 in funcall_compiled_function (fun=138422268, nargs=0,
args=0xbffff8e0) at bytecode.c:530
#47 0x8093030 in Feval (form=138209668) at eval.c:3045
#48 0x809020f in condition_case_1 (handlers=137119900, bfun=0x809224c <Feval>,
barg=138209668, hfun=0x806f1e0 <cmd_error>, harg=137119788) at eval.c:1640
#49 0x80703ad in top_level_1 (dummy=137119788) at cmdloop.c:205
#50 0x8097c6f in internal_catch (tag=137196572, func=0x8070384 <top_level_1>,
arg=137119788, threw=0x0) at eval.c:1315
#51 0x806f32f in initial_command_loop (load_me=137119788) at cmdloop.c:284
#52 0x808b6d7 in xemacs_21_2_b14_i586_pc_linux () at emacs.c:1742
#53 0x808d49d in main () at emacs.c:2164
--
David Byers.