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.
Please describe as succinctly as possible:
- What happened.
- What you thought should have happened.
- Precisely what you were doing at the time.
Please also include any C or lisp back-traces that you may have.
================================================================
Dear Bug Team!
The short version:
When running M-x vm initially, or M-x vm-visit-folder to
read another folder, an error appears saying concat no
longer works with compiled-function objects. Backtrace is
below.
I know more-or-less why it's happening, and had a workaround
at one time. It happens to users (victims) of Hyperbole,
which I realize is not a part of the distribution. I am
using hyperb:version => "04.023", the last free version.
I have a feeling this problem is not an unfamiliar one to
you. Bear with me. What follows is as much a rant as it is a
bug report.
First of all, here is a backtrace:
------------------------------------------------------------
Signaling: (error "As of 20.3, `concat' no longer works with compiled-function
objects" #<compiled-function (&optional prefix-argument) "...(346)"
[w offset vm-mail-buffer mp edit-buf vm-message-pointer vm-follow-summary-cursor
buffer-name error "Folder buffer has been killed." (vm-mode vm-virtual-mode)
"No VM folder buffer associated with this buffer" vm-check-for-killed-summary
vm-check-for-killed-presentation signal folder-read-only vm-error-if-folder-empty
vm-virtual-message-p 4 1 "Can't edit unmirrored virtual messages." 2 7
vm-set-edited-flag-of nil vm-update-summary-and-mode-line 0 buffer-size make-marker
((byte-code "~=88=ab=8e
}=88
=c3=89=93=88 =c3=89=93=88=c3=87" [vm-sr-clip vm-sr-max vm-sr-min nil] 3))
generate-new-buffer format "edit of %s's note re: %s" vm-su-full-name
vm-su-subject set-buffer-multibyte copy-to-buffer set-buffer-modified-p search-forward
"
" t text-mode set-keymap-parent current-local-map use-local-map editing run-hooks
vm-edit-message-hook message substitute-command-keys "Type \\[vm-edit-message-end] to
end edit, \\[vm-edit-message-abort] to abort with no change."
vm-multiple-frames-possible-p vm-get-buffer-window vm-goto-new-frame edit
vm-set-hooks-for-frame-deletion select-window vm-warp-mouse-to-frame-maybe vm-window-frame
vm-display (vm-edit-message vm-edit-message-other-frame) editing-message
vm-presentation-buffer folder-buffer vm-sr-max vm-sr-min vm-edit-message-map major-mode
vm-folder-read-only prefix-argument vm-sr-clip vm-fsfemacs-mule-p vm-edit-message-mode
vm-system-state buffer-offer-save vm-mutable-frames vm-frame-per-edit
vm-warp-mouse-to-new-frame this-command] 7 "Edit the current message. Prefix arg
means mark as unedited instead.
If editing, the current message is copied into a temporary buffer, and
this buffer is selected for editing. The major mode of this buffer is
controlled by the variable vm-edit-message-mode. The hooks specified
in vm-edit-message-hook are run just prior to returning control to the user
for editing.
Use C-c ESC when you have finished editing the message. The message
will be inserted into its folder replacing the old version of the
message. If you don't want your edited version of the message to
replace the original, use C-c C-] and the edit will be aborted." "P">)
append(#<compiled-function (&optional prefix-argument) "...(346)" [w
offset vm-mail-buffer mp edit-buf vm-message-pointer vm-follow-summary-cursor buffer-name
error "Folder buffer has been killed." (vm-mode vm-virtual-mode) "No VM
folder buffer associated with this buffer" vm-check-for-killed-summary
vm-check-for-killed-presentation signal folder-read-only vm-error-if-folder-empty
vm-virtual-message-p 4 1 "Can't edit unmirrored virtual messages." 2 7
vm-set-edited-flag-of nil vm-update-summary-and-mode-line 0 buffer-size make-marker (...)
generate-new-buffer format "edit of %s's note re: %s" vm-su-full-name
vm-su-subject set-buffer-multibyte copy-to-buffer set-buffer-modified-p search-forward
"\n\n" t text-mode set-keymap-parent current-local-map use-local-map editing
run-hooks vm-edit-message-hook message substitute-command-keys ...] 7 "Edit the
current message. Prefix arg means mark as unedited instead.\nIf editing, the current
message is copied into a temporary buffer,!
and\nthis buffer is selected for editing. The major mode of this buffer is\ncontrolled
by the variable vm-edit-message-mode. The hooks specified\nin vm-edit-message-hook are
run just prior to returning control to the user\nfor editing.\n\nUse C-c ESC when you have
finished editing the message. The message\nwill be inserted into its folder replacing the
old version of the\nmessage. If you don't want your edited version of the message
to\nreplace the original, use C-c C-] and the edit will be aborted."
"P"> nil)
(let ((new-code ...)) (apply (quote make-byte-code) new-code))
(cond ((listp func) (copy-sequence func)) ((subrp func) (error
"(hypb:function-copy): `%s' is a primitive; can't copy body."
func-symbol)) ((and ... ...) (let ... ...)) (t (error "(hypb:function-copy):
Can't copy function body: %s" func)))
(let ((func ...)) (cond (... ...) (... ...) (... ...) (t ...)))
(if (fboundp func-symbol) (let (...) (cond ... ... ... ...)) (error
"(hypb:function-copy): `%s' symbol is not bound to a function."
func-symbol))
hypb:function-copy(vm-edit-message)
(fset old-func-sym (hypb:function-copy func-sym))
(or (fboundp old-func-sym) (fset old-func-sym (hypb:function-copy func-sym)))
(let ((old-func-sym ...)) (or (fboundp old-func-sym) (fset old-func-sym ...)) (let* (...
... ... ...) (eval ...)))
hypb:function-overload(vm-edit-message nil (hmail:msg-narrow))
load-internal("hvm" nil nil nil nil nil)
load("hvm" nil nil nil)
Vm-init()
run-hooks(Vm-init)
vm-mode-internal(nil)
byte-code("..." [totals-blurb preserve-auto-save-file file full-startup folder
buffer-file-coding-system bufferp nil pop vm-pop-find-spec-for-name error "No such
POP folder: %s" vm-pop-make-filename-for-spec expand-file-name file-directory-p
"%s is a directory" vm-get-file-buffer t no-conversion raw-text message
"Reading %s..." find-file-noselect "Reading %s... done" buffer-name
rename-buffer set-buffer-multibyte get-coding-system no-conversion-unix no-conversion-dos
no-conversion-mac binary buffer-modified-p ((set-buffer-modified-p omodified))
encode-coding-region set-buffer-file-coding-system decode-coding-region coding-system-base
raw-text-unix raw-text-mac raw-text-dos ((set-buffer-modified-p omodified))
vm-check-for-killed-summary vm-check-for-killed-presentation 0 vm-mode
file-newer-than-file-p make-auto-save-file-name default-value vm-folder-read-only ...] 9)
vm("/home/lnewton/mail/g/azipa" nil nil)
#<compiled-function (folder &optional read-only) "...(64)"
[default-directory vm-recognize-pop-maildrops vm-mail-buffer access-method foo folder
vm-session-initialization vm-check-for-killed-folder vm-check-for-killed-summary nil
string-match vm-pop-find-name-for-spec pop expand-file-name vm vm-last-visit-folder
vm-folder-directory read-only] 4 "Visit a mail file.\nVM will parse and present its
messages to you in the usual way.\n\nFirst arg FOLDER specifies the mail file to visit.
When this\ncommand is called interactively the file name is read from
the\nminibuffer.\n\nPrefix arg or optional second arg READ-ONLY non-nil indicates\nthat
the folder should be considered read only. No attribute\nchanges, messages additions or
deletions will be allowed in the\nvisited folder." (save-excursion
(vm-session-initialization) (vm-check-for-killed-folder)
(vm-select-folder-buffer-if-possible) (let ... ...))>("~/mail/g/azipa" nil)
call-interactively(vm-visit-folder)
------------------------------------------------------------
<rant>
I removed all the .elc files from my Hyperbole directory,
which was causing many headaches. Apparently the author
(known well to this list) overwrote a number of defuns with
his own names, including some namespace conflict with the VM
package. I believe there is an hvm.el that does some major
playing with this stuff.
At one time I also removed the .elc files from the directory
where vm resides. This solved the problem for a while until
I got a new version of XEmacs. Since that time removing
those files has only introduced other problems that could
not be worked around.
************************************************************
* NOTE: The main point of this diatribe is to ask whether
* anyone on the development team who is familiar with this
* problem knows which byte-compiled files within VM I can
* delete to get back to where I was? An hour of frustrating
* experimentation this afternoon left me right where I
* started. Perhaps that is no longer a workaround.
************************************************************
Shortly after this first started happening (two or three
years ago?) I realized that M-x vm-visit-folder actually
reads in the mail folder to a buffer before the error. If I
repeat the command using repeat-complex-command it continues
on, popping up a new frame, attempting to fetch new mail,
and doing all the cool things that VM does when it
initalizes.
So in practical terms all it means is that I have to run M-x
vm or M-x vm-visit-folder twice in a row for it to work.
I've just gotten used to this like a person gets used to a
car trunk lid that never shuts right the first time and has
to be slammed twice.
I started using Hyperbole when it was still in its pre-alpha
development stages, and lived with all its weirdness because
I liked some of the functionality.
The truth is I *really* like some of the things Hyperbole
does, and want to retain that functionality. Frankly, it
ticked me off when the author turned it into a commercial
product and meanwhile XEmacs moved on and its elisp became
incompatible. That's a complaint about the author of
Hyperbole, not against XEmacs. I will not buy into the
commercial version of what was once XEmacs being propagated
by Hyperbole's author. For one thing, I tried it once and
hate it. For another thing, I find it strange that someone
has been able to go off and make a commercial version of
XEmacs. But that's another issue.
My alternative is to rip everything related to Hyperbole out
of my startups and environment. I tried that once two or
three years ago, but found that the influence of Hyperbole
permeated my configuration, and it seemed like I was
constantly tripping over something new. So I restarted my
startup files from a backup set and have lived with the
problem ever since. I've gotten out of the mode of
constantly tinkering with my XEmacs, as much fun as it is,
and just want it to work right.
</rant>
Another likely related report will follow.
================================================================
System Info to help track down your bug:
---------------------------------------
uname -a: Linux
miles.phx.mcd.mot.com 2.2.14-5.0 #1 Tue Mar 7 21:07:39 EST 2000 i686
unknown
./configure
XEmacs 21.4.0 "Solid Vapor" configured for `i686-pc-linux'.
Compilation / Installation:
Source code location: /home/lnewton/src/xemacs-21.4.0
Installation prefix: /usr/local
Operating system description file: `s/linux.h'
Machine description file: `m/intel386.h'
Compiler: gcc -g -O3 -Wall -Wno-switch -Winline
-Wmissing-prototypes -Wshadow -Wsign-compare
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: /usr/X11R6/include
- X Windows libraries location: /usr/X11R6/lib
- Handling WM_COMMAND properly.
Compiling in support for the Athena widget set:
- Athena headers location: X11/Xaw
- Athena library to link: Xaw
Using Lucid menubars.
Using Lucid scrollbars.
Using Athena dialog boxes.
Using Athena native widgets.
TTY:
Compiling in support for ncurses.
Compiling in support for GPM (General Purpose Mouse).
Images:
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.
Sound:
Compiling in support for sound (native).
Compiling in support for ESD (Enlightened Sound Daemon).
Databases:
Compiling in support for Berkeley database.
Compiling in support for PostgreSQL.
- Using PostgreSQL header file: pgsql/libpq-fe.h
Internationalization:
Mail:
Compiling in support for "dot-locking" mail spool file locking method.
Other Features:
Compiling in support for dynamic shared object modules.
Load-Path Lisp Shadows:
----------------------
(/home/lnewton/.xemacs/acts
/usr/local/lib/xemacs/site-packages/lisp/acts
/usr/local/lib/xemacs/site-packages/lisp/savehist
/usr/local/lib/xemacs/xemacs-packages/lisp/edit-utils/savehist
/usr/local/lib/xemacs/site-packages/lisp/hanoi
/usr/local/lib/xemacs/xemacs-packages/lisp/misc-games/hanoi
/usr/local/lib/xemacs/site-packages/lisp/xrdb-mode
/usr/local/lib/xemacs/xemacs-packages/lisp/text-modes/xrdb-mode
/usr/local/lib/xemacs/xemacs-packages/lisp/vc-cc/tq
/usr/local/lib/xemacs/xemacs-packages/lisp/xemacs-base/tq
/usr/local/lib/xemacs/site-packages/lisp/ffap
/usr/local/lib/xemacs/xemacs-packages/lisp/xemacs-base/ffap
/usr/local/lib/xemacs/xemacs-packages/lisp/edit-utils/ibuffer
/usr/local/lib/xemacs/xemacs-packages/lisp/xemacs-devel/ibuffer
/home/lnewton/.xemacs/custom /usr/local/lib/xemacs-21.4.0/lisp/custom)
Installed XEmacs Packages:
-------------------------
((zenirc:version 1.09 :type regular)
(xslt-process :version 1.04 :type regular)
(xemacs-devel :version 1.36 :type single-file)
(xemacs-base :version 1.58 :type regular)
(w3 :version 1.21 :type regular)
(vm :version 7.02 :type regular)
(viper :version 1.31 :type regular)
(view-process :version 1.11 :type regular)
(vhdl :version 1.13 :type regular)
(vc-cc :version 1.16 :type regular)
(vc :version 1.3 :type regular)
(tpu :version 1.12 :type regular)
(tooltalk :version 1.13 :type regular)
(tm :version 1.28 :type regular)
(time :version 1.11 :type regular)
(textools :version 1.12 :type regular)
(text-modes :version 1.37 :type single-file)
(texinfo :version 1.2 :type regular)
(supercite :version 1.19 :type regular)
(strokes :version 1.08 :type regular)
(speedbar :version 1.22 :type regular)
(sounds-wav :version 1.1 :type regular)
(sounds-au :version 1.1 :type regular)
(slider :version 1.13 :type regular)
(sh-script :version 1.13 :type regular)
(sgml :version 1.08 :type regular)
(semantic :version 1.06 :type regular)
(scheme :version 1.11 :type regular)
(reftex :version 1.24 :type regular)
(psgml :version 1.26 :type regular)
(ps-print-nomule :version 1.05 :type regular)
(prog-modes
:version
1
.49
:type
single-file)
(pcomplete :version 1.01 :type regular)
(pcl-cvs :version 1.58 :type regular)
(pc :version 1.21 :type single-file)
(os-utils :version 1.26 :type single-file)
(net-utils :version 1.23 :type single-file)
(misc-games :version 1.15 :type single-file)
(mine :version 1.14 :type regular)
(mh-e :version 1.13 :type regular)
(mew :version 1.16 :type regular)
(mailcrypt :version 2.11 :type regular)
(mail-lib :version 1.43 :type regular)
(ispell :version 1.24 :type regular)
(ilisp :version 1.2 :type regular)
(igrep :version 1.08 :type regular)
(idlwave :version 1.23 :type regular)
(hm--html-menus :version 1.17 :type regular)
(gnus :version 1.58 :type regular)
(gnats :version 1.13 :type regular)
(games :version 1.13 :type regular)
(fsf-compat :version 1.09 :type single-file)
(frame-icon :version 1.09 :type regular)
(footnote :version 1.13 :type regular)
(eudc :version 1.33 :type regular)
(eterm :version 1.13 :type regular)
(eshell :version 1.02 :type regular)
(emerge :version 1.09 :type regular)
(elib :version 1.1 :type single-file)
(eieio :version 1.02 :type regular)
(efs :version 1.27 :type regular)
(edt :version 1.12 :type regular)
(edit-utils :version 1.76 :type single-file)
(ediff :version 1.36 :type regular)
(edebug :version 1.14 :type regular)
(dired :version 1.11 :type regular)
(debug :version 1.14 :type regular)
(crisp :version 1.12 :type regular)
(cookie :version 1.13 :type regular)
(cc-mode :version 1.27 :type regular)
(calendar :version 1.18 :type regular)
(calc :version 1.18 :type regular)
(c-support :version 1.16 :type single-file)
(build :version 1.02 :type regular)
(bbdb :version 1.17 :type regular)
(auctex :version 1.29 :type regular)
(apel :version 1.2 :type regular)
(ada :version 1.1 :type regular)
(Sun :version 1.13 :type regular))
Features:
--------
(xemacsbug shadow vm-minibuf vm-macro vm-delete vm-undo supercite
mail-extr regi mail-utils mail-abbrevs hsmail vm-reply vm-pop bbdb-gui
vm-page vm-mime vm-save vm-toolbar vm-motion vm-summary tapestry
vm-message vm-menu vm-folder vm-misc vm-mouse vm-window bbdb-vm
bbdb-snarf bbdb-com vm-autoload highlight-headers vm-vars vm-version
vm vm-startup fast-lock env shell-font shell font-lock xemacs-el
gnuserv inith fcc sendmail hsite hui-menu wrolo-menu hinit hibtypes
hib-doc-id klink hib-kbd hsys-w3 hactypes hui-mini hui hmail hui-mouse
hui-window hargs hpath hui-xe-but hbut hbdata htz hbmap hmoccur
hyperbole hmouse-key h-skip-bytec hmouse-drv hypb hact hhist hvar set
hversion tags etags redo advice advice-preload uniquify func-menu
savehist initl fwlm running edmacro initm tex-site ispell icomplete
rsz-minibuf filladapt efs-cu efs-x19.15 efs-fnh efs-ovwrt efs-auto
crypt crypt++ cc-mode cc-align cc-cmds cc-engine cc-styles cc-langs
cc-vars wid-edit cus-face cc-menus imenu cc-defs bbdb timezone initd
Keysl x-compose mailcrypt rfc822 comint ring zenirc-autoloads
xslt-process-autoloads xemacs-devel-autoloads xemacs-base-autoloads
w3-autoloads vm-autoloads viper-autoloads view-process-autoloads
vhdl-autoloads vc-cc-autoloads vc-autoloads tpu-autoloads
tooltalk-autoloads tm-autoloads time-autoloads textools-autoloads
text-modes-autoloads texinfo-autoloads supercite-autoloads
strokes-autoloads speedbar-autoloads sounds-wav-autoloads
sounds-au-autoloads slider-autoloads sh-script-autoloads
sgml-autoloads semantic-autoloads scheme-autoloads reftex-autoloads
psgml-autoloads ps-print-nomule-autoloads prog-modes-autoloads
pcomplete-autoloads pcl-cvs-autoloads pc-autoloads os-utils-autoloads
net-utils-autoloads misc-games-autoloads mine-autoloads mh-e-autoloads
mew-autoloads mailcrypt-autoloads mail-lib-autoloads ispell-autoloads
ilisp-autoloads igrep-autoloads idlwave-autoloads
hm--html-menus-autoloads gnus-autoloads gnats-autoloads
games-autoloads fsf-compat-autoloads frame-icon-autoloads
footnote-autoloads eudc-autoloads eterm-autoloads eshell-autoloads
emerge-autoloads elib-autoloads eieio-autoloads efs-autoloads
edt-autoloads edit-utils-autoloads ediff-autoloads edebug-autoloads
dired-autoloads debug-autoloads crisp-autoloads cookie-autoloads
cc-mode-autoloads calendar-autoloads calc-autoloads
c-support-autoloads build-autoloads bbdb-autoloads auctex-autoloads
apel-autoloads ada-autoloads Sun-autoloads lisp-autoloads loadhist
auto-show fontl-hooks x-iso8859-1 gutter-items menubar-items x-menubar
mode-motion mouse itimer auto-save lisp-mode easymenu iso8859-1 page
buff-menu lib-complete help-nomule cus-file derived frame text-props
obsolete cus-start custom widget cl-extra mini-cl cl cl-19 packages
backquote very-early-lisp postgresql lucid-scrollbars cut-buffer
lucid-menubars athena-dialogs x c-balloon-help tty-frames tty toolbar
esd-sound native-sound scrollbar unix-processes multicast
network-streams subprocesses modules menu-accelerator-support menubar
berkeley-db md5 xemacs gutter tiff png gif jpeg xface xpm xbm
lisp-float-type linux dialog devices window-system base64)
Recent keystrokes:
-----------------
r SPC h a s SPC g o t SPC s o m e SPC m a j o r SPC
m o g o BS BS j o SPC h a p p e n i n g . RET RET C-c
C-w r C-c C-c g d X RET r m SPC M e s TAB RET s RET
C-v kp-up l s RET C-g l s SPC x RET C-f M-v d C-z C-z
v g / a z TAB RET C-x C-w M-b M-b C-k B a c TAB 2 RET
q M-v d C-f misc-user
Recent messages (most recent first):
-----------------------------------
Loading xemacsbug...done
Loading xemacsbug...
Wrote /home/lnewton/Backtrace2
Entering debugger...
Loading debug...done
Loading debug...
Loading vm-edit...done
Loading vm-edit...
Loading hsmail...done
Loading hsmail...
Loading hvm...
Reading /home/lnewton/mail/g/azipa... done
Reading /home/lnewton/mail/g/azipa...
Loading vm-minibuf...done
Loading vm-minibuf...
Loading vm-macro...done
Loading vm-macro...
debug-on-error is now t: DEBUG ON
Quit
Completed