I call this a partial success because any level of optimization causes the post dump
command
./xemacs -no-packages -batch -no-autoloads -l update-elc-2.el -f batch-update-elc-2
/usr/local/sbin/xemacs/src/../lisp
to trigger a Bus Error (regardless of whether --use-union-type is defined). Here is a
Darwin stack trace:
OS Version: 10.2.6 (Build 6L60)
Host:
grendal.frinabulax.org
Command: xemacs
PID: 6665
Exception: EXC_BAD_ACCESS (0x0001)
Codes: KERN_PROTECTION_FAILURE (0x0002) at 0x00000004
Thread 0 Crashed:
#0 0x000ba0ac in assq_no_quit (fns.c:1504)
#1 0x0001357c in Fkill_all_local_variables (buffer.c:1702)
#2 0x00051f1c in Ffuncall (eval.c:3843)
#3 0x00017cd8 in execute_optimized_program (bytecode.c:609)
#4 0x0005a718 in funcall_compiled_function (eval.c:3458)
#5 0x00051d70 in Ffuncall (eval.c:3881)
#6 0x00017cd8 in execute_optimized_program (bytecode.c:609)
#7 0x0005a718 in funcall_compiled_function (eval.c:3458)
#8 0x00051d70 in Ffuncall (eval.c:3881)
#9 0x00017cd8 in execute_optimized_program (bytecode.c:609)
#10 0x0005a718 in funcall_compiled_function (eval.c:3458)
#11 0x0005c668 in Feval (eval.c:3661)
#12 0x0005778c in condition_case_1 (eval.c:5988)
#13 0x00026094 in top_level_1 (cmdloop.c:230)
#14 0x0004ee5c in internal_catch (eval.c:1528)
#15 0x000261e4 in initial_command_loop (cmdloop.c:285)
#16 0x0004dfd0 in xemacs_21_5_b13_powerpc_apple_darwin6_6 (emacs.c:2403)
#17 0x0004e318 in Frun_emacs_from_temacs (emacs.c:2702)
#18 0x000021f4 in _start (crt.c:267)
#19 0x00002074 in start
PPC Thread State:
srr0: 0x000ba0ac srr1: 0x0200f030 vrsave: 0x00000000
xer: 0x20000000 lr: 0x000ba084 ctr: 0x22002222 mq: 0x00000000
r0: 0x00000000 r1: 0xbfffe150 r2: 0x00000000 r3: 0x00aa4b90
r4: 0x019aecd8 r5: 0x002fe2e0 r6: 0x0001357c r7: 0x00233da0
r8: 0x00233da0 r9: 0x019c9c60 r10: 0x002fe7e0 r11: 0x0022a084
r12: 0x00010d84 r13: 0x0000001e r14: 0xbfffeed0 r15: 0x00040000
r16: 0x00000005 r17: 0xfffffff0 r18: 0x0022a420 r19: 0x00051134
r20: 0xbfffe240 r21: 0x00231134 r22: 0x00231134 r23: 0x00231134
r24: 0x002fe9ec r25: 0x00321060 r26: 0x00223da0 r27: 0x00aa4b90
r28: 0x002fde34 r29: 0x002fe2e0 r30: 0x01b34fb0 r31: 0x000ba084
Also, please note what looks to me to be odd MULE test results. The tests abort
but report 100% success. The aborts look to be byte alignment problems, and the
small bit of debugging info I could get from gdb looked to me like problems were
from bytecode alignment. I did, BTW, compile from a real clean source tree, no
object of elc files.
The --use-union-type setting *appears* to me to create a more stable version on
Mac OS X wrt widgets--may just be chance that the versions that crash when
widgets are selected or that show sloppy widget redraw are generally the ones
where lisp objects are not unions.
Otherwise all is well. The 20030510 CVS did not have this problem.
XEmacs Build Report generated by emacs-version
21.5 (beta13) "cauliflower" (+CVS-20030511) XEmacs Lucid
with system-configuration
powerpc-apple-darwin6.6
follows:
Contents of /usr/local/sbin/xemacs/Installation:
(Output from most recent run of ./configure)
uname -a: Darwin
grendal.frinabulax.org 6.6 Darwin Kernel Version 6.6: Thu May 1 21:48:54
PDT 2003; root:xnu/xnu-344.34.obj~1/RELEASE_PPC Power Macintosh powerpc
./configure '--with-mule' '--with-widgets=athena' '--with-xfs'
'--with-dialogs=athena' '--with-athena=3d' '--error-checking=none'
'--debug=no' '--with-prefix' '--with-sound=noesd'
'--package-path=/usr/local/sbin/xemacs/lib'
'--prefix=/usr/local/sbin/xemacs' '--cflags_warning=${CWARNINGS}'
'--cflags=-g' '--pdump' '--with-ldap=no'
'--use-union-type' '--with-xmu'
XEmacs 21.5-b13 "cauliflower" (+CVS-20030511) configured for
`powerpc-apple-darwin6.6'.
Compilation / Installation:
Source code location: /usr/local/sbin/xemacs
Installation prefix: /usr/local/sbin/xemacs
Operating system description file: `s/darwin.h'
Machine description file: `m/powerpc.h'
Compiler: gcc -w -g
gcc (GCC) 3.4 20030510 (experimental)
Relocating allocator for buffers: no
GNU version of malloc: no
- The GNU allocators don't work with this system configuration.
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/Xaw3d
- Athena library to link: Xaw3d
Using Lucid menubars.
Using Lucid scrollbars.
Using Athena dialog boxes.
Using Athena native widgets.
TTY:
Compiling in support for ncurses.
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.
Sound:
Databases:
Compiling in support for Berkeley database.
Compiling in support for GNU DBM.
Internationalization:
Compiling in support for Mule (multi-lingual Emacs).
Compiling in support for XIM (X11R5+ I18N input method).
- Using Motif to provide XIM support.
Mail:
Compiling in support for "dot-locking" mail spool file locking method.
Other Features:
Inhibiting IPv6 canonicalization at startup.
Compiling in support for dynamic shared object modules.
Using the union type for Lisp_Objects.
WARNING: ---------------------------------------------------------
WARNING: This tends to trigger compiler bugs, especially when
WARNING: combined with MULE and ERROR_CHECKING. Crashes have
WARNING: been seen with various versions of GCC, and recently
WARNING: with Visual C++ as well.
WARNING: ---------------------------------------------------------
WARNING: Use of the union type may cause crashes due to compiler bugs.
Using the new portable dumper.
Contents of /usr/local/sbin/xemacs/xemacs-make-all.err
keeping lines matching
"^--\[\[\|\]\]$\|^\(cd\|n?make\)\s-\|errors?\|warnings?\|pure.*\(space\|size\)\|hides\b\|strange\|shadowings\|^Compil\(ing\s-+in\|ation\)\|^Using\|not\s-+found\|^While\s-+compiling.*\(
\s-+.+\)*\|^Note:\|Installing\|[Ff]ile(s) copied\|\s-+tests\s-+"
and then deleting lines matching
"confl.*with.*auto-inlining\|^Formatting:\|(100%) tests successful"
cd ./lib-src && make all
cd ./lwlib && make all
cd ./src && make all
Using load-path (/usr/local/sbin/xemacs/lisp/)
Using module-load-path (/usr/local/sbin/xemacs/modules)
While compiling toplevel forms in file /usr/local/sbin/xemacs/lisp/behavior-defs.el:
** assignment to free variable fume-display-in-modeline-p
** assignment to free variable filladapt-mode
** reference to free variable filladapt-mode
While compiling the end of the data:
** The following functions are not known to be defined:
mouse-avoidance-mode, fume-add-menubar-entry,
fume-remove-menubar-entry, fume-remove-post-command-hook,
filladapt-mode
Using load-path (/usr/local/sbin/xemacs/lisp/)
Using module-load-path (/usr/local/sbin/xemacs/modules)
While compiling widget-sexp-value-to-internal in file
/usr/local/sbin/xemacs/lisp/wid-edit.el:
** function widget-sexp-value-to-internal defined multiple times in this file
While compiling widget-sexp-validate:
** function widget-sexp-validate defined multiple times in this file
While compiling widget-sexp-prompt-value:
** function widget-sexp-prompt-value defined multiple times in this file
While compiling the end of the data in file /usr/local/sbin/xemacs/lisp/msw-font-menu.el:
** The following functions are not known to be defined:
mswindows-parse-font-style, mswindows-construct-font-style
While compiling the end of the data in file /usr/local/sbin/xemacs/lisp/gtk.el:
** the function gtk-import-function is not known to be defined.
While compiling toplevel forms in file /usr/local/sbin/xemacs/lisp/mule/thai-util.el:
** define-category called with 3 arguments, but accepts only 2
** define-category called with 3 arguments, but accepts only 2
** define-category called with 3 arguments, but accepts only 2
While compiling the end of the data:
** the function make-category-table is not known to be defined.
While compiling the end of the data in file
/usr/local/sbin/xemacs/lisp/mule/mule-msw-init-late.el:
** The following functions are not known to be defined:
mswindows-set-charset-registry, mswindows-set-charset-code-page
While compiling toplevel forms in file /usr/local/sbin/xemacs/lisp/mule/lao-util.el:
** define-category called with 3 arguments, but accepts only 2
** define-category called with 3 arguments, but accepts only 2
** define-category called with 3 arguments, but accepts only 2
** define-category called with 3 arguments, but accepts only 2
While compiling the end of the data:
** The following functions are not known to be defined:
make-category-table, regexp-opt
While compiling ethio-modify-vowel in file
/usr/local/sbin/xemacs/lisp/mule/ethio-util.el:
** decompose-composite-char is an obsolete function; use char-to-string instead.
cd /usr/local/sbin/xemacs/man && make info
/usr/local/sbin/xemacs/beta.err not found!
Contents of /usr/local/sbin/xemacs/xemacs-make-check.err
keeping lines matching
"^--\[\[\|\]\]$\|^\(cd\|n?make\)\s-\|errors?\|warnings?\|pure.*\(space\|size\)\|hides\b\|strange\|shadowings\|^Compil\(ing\s-+in\|ation\)\|^Using\|not\s-+found\|^While\s-+compiling.*\(
\s-+.+\)*\|^Note:\|Installing\|[Ff]ile(s) copied\|\s-+tests\s-+"
and then deleting lines matching
"confl.*with.*auto-inlining\|^Formatting:\|(100%) tests successful"
cd ./src && make check
base64-tests.el: 1234 of 1234 tests successful (100%).
byte-compiler-tests.el: 104 of 104 tests successful (100%).
c-tests.el: 4 of 4 tests successful (100%).
case-tests.el: 1148 of 1148 tests successful (100%).
ccl-tests.el: 4570 of 4570 tests successful (100%).
database-tests.el: 20 of 20 tests successful (100%).
extent-tests.el: 194 of 194 tests successful (100%).
hash-table-tests.el: 9866 of 9866 tests successful (100%).
lisp-tests.el: 3660 of 3660 tests successful (100%).
md5-tests.el: 56 of 56 tests successful (100%).
Unexpected error (file-error "Opening output file" "Invalid argument"
"/private/tmp/royar/~~~~yBDqu3") while executing interpreted code.
Unexpected error (file-error "Opening output file" "Invalid argument"
"/private/tmp/royar/~~~~yBDfQc") while executing byte-compiled code.
mule-tests.el: 206 of 206 tests successful (100%).
regexp-tests.el: 208 of 208 tests successful (100%).
symbol-tests.el: 246 of 246 tests successful (100%).
syntax-tests.el: 60 of 60 tests successful (100%).
weak-tests.el: 14 of 14 tests successful (100%).
/usr/local/sbin/xemacs/xemacs-make-check-temacs.err not found!
/usr/local/sbin/xemacs/xemacs-make-install.err not found!
--
Dr. Robert Delius Royar Associate Professor of English
Morehead State University Morehead, Kentucky
UGLY Corporate Radio is THE Enemy Combatant