Updated: [Test-version] xemacs-21.5.28-2/xemacs-tags-21.5.28-2/xemacs-emacs-common-21.5.28-2
17 years
Dr. Volker Zell
Hi
A new *TEST* version of 'xemacs' has been uploaded to a server near you.
DESCRIPTION:
============
A powerful, highly customizable open source text editor and application
development system
CYGWIN NEWS:
============
21.5.28-2:
* Recompiled against Berkeley DB db4.5-4.5.20
21.5.28-1:
* Routine update
* Added --with-archlibdir
--with-docdir
--with-moduledir
to configure otherwise XEmacs doesn't find it's exec-directory/doc-directory/module-directory
* Removed --disable-mc-alloc from configure
21.5.27:
* Not officially released
* Routine update
* Switched to cygport build framework
21.5.24:
* Not officially released
* Added --with-dragndrop and --with-offix to configure
* Added --with-xft=emacs,tabs,menubars,gauges
* Added --disable-mc-alloc because of 'assertion failed' messages
XEmacs NEWS:
============
Major Features and Backward Incompatible Changes
-- Fix: Check for missing dimensions for default face and window -- Aidan Kehoe, Mike Sperber
-- Fix: Crash in PNG error handler -- Stephen J. Turnbull, Ron Isaacson
-- Fix: Crash in device-matching-specifier-list -- Stephen J. Turnbull
-- Fix: Crash in gtk/x_reset_modifier_mapping -- Aidan Kehoe
-- Fix: Crash in linux_play_data_or_file on 64-bit linux -- Hans Graff, Vin Shelton
-- Fix: Crash on double-close of fd in pdump -- Steve Higham, Vin Shelton
-- Fix: Crash via buffer overflow in doc.c -- Aidan Kehoe, Fabrice Popineau
-- Fix: Crash via buffer overrun in init_native_sound -- Jerry James
-- Fix: Crash when deleting dialog via window manager -- Stephen J. Turnbull
-- Fix: Device type of msprinter is non-window-system -- Aidan Kehoe
-- Fix: Float formats overflow output buffer -- Aidan Kehoe
-- Fix: Font menu on non-Mule -- Aidan Kehoe
-- Fix: ISO 2022 decoding kludges -- Aidan Kehoe
-- Fix: Make snarf-documentation robust to nonconforming DOC files -- Aidan Kehoe
-- Fix: Non-existent charset ID is specified for a mule-to-unicode call -- Aidan Kehoe
-- Fix: Sanity checks before accessing frame in x_set_frame_properties -- Aidan Kehoe
-- Fix: Type of arguments to GaugeMercury (related to progress bar crash?) -- Stephen J. Turnbull
-- Fix: init_native_sound is called on a msprinter device -- Aidan Kehoe
-- Fix: set-buffer-file-coding-system now sets buffer-modified-flag by default -- Aidan Kehoe
-- New: Echo area resizing -- Adrian Aichner, Stephen J. Turnbull
User-Visible Bug Fixes and Minor Improvements
-- Fix: Avoid delays in TTY-only builds by checking dispatch event queue -- Aidan Kehoe
-- Fix: Avoid looking up variable bindings during GC -- Nix
-- Fix: Buffer overruns in gnuclient and gnuslib -- Jerry James
-- Fix: Remove references to unimplemented input methods from language environments -- Aidan Kehoe
-- Fix: Find modules correctly -- Ville Skytt, Mike Sperber, Stephen Turnbull
-- Fix: Get X11 window property correctly on 64-bit platforms -- Stephen J. Turnbull, Mike Fabian, Takashi Iwai
-- Fix: Handle coding system in file insertion in buffer properly -- Mike Sperber
-- Fix: Info broke invariant `(equal buffer-file-truename (file-truename buffer-file-name))' -- Stephen J. Turnbull, Nelson Ferreira
-- Fix: Lots of tweaking of Windows read-only handling -- Vin Shelton, Benson Margulies
-- Fix: Make --unmapped work again -- Malcolm Purvis
-- Fix: Make copying of char tables work -- Olivier Galibert, Stephen J. Turnbull
-- Fix: Prevent C-z in a gnuclient frame from suspending the process -- Aidan Kehoe
-- Fix: Regex for finding command nodes -- Jeff Miller
-- Fix: Reversion should check buffer-file-coding-system -- Aidan Kehoe
-- Fix: Syntax of guillemets -- Aidan Kehoe
-- Fix: Window configuration should not restore window position unless requested -- Nix
-- Improve: Better version info in etags -- Stephen Turnbull, Steve Youngs
-- Improve: Case table, syntax table information for Cyrillic, Greek -- Aidan Kehoe
-- Improve: Face initialization from X resources -- Aidan Kehoe
-- Improve: Give x-compose-map an entry for sharp S -- Aidan Kehoe
-- Improve: Handling of Asian "full-width" characters on TTY -- Aidan Kehoe
-- Improve: Language environment detection from locale -- Aidan Kehoe
-- Improve: Look harder for X11 locale-specific app-defaults files -- Malcolm Purvis
-- Improve: Make read-quoted-char terminate, not error, on non-character keys -- Aidan Kehoe
-- Improve: Sort abbrev database -- Adrian Aichner
-- Improve: Support non-ISO Cyrillic keysyms -- Aidan Kehoe
-- Improve: Sync etags to pot version 17.26; improve version report -- Stephen J. Turnbull, Steve Youngs
-- Improve: Sync etags to pot version 17.32; move improved version report to configure, lose pot version report -- Stephen J. Turnbull
-- Improve: Try to rationalize resources of Xft in lwlib -- Stephen J. Turnbull
-- Improve: Use short list fixed string registries, not long list pruned by regexp for X11 fonts -- Aidan Kehoe
-- Improve: charsets-in-region now in C -- Aidan Kehoe
-- Improve: what-cursor-position gives Unicode and Mule information on non-ASCII -- Aidan Kehoe
-- New: Add raw string support like SXEmacs -- Aidan Kehoe
-- New: Find C source files for Lisp primitives -- Aidan Kehoe
-- New: Just-in-time definition of Unicode characters and X keysyms -- Aidan Kehoe
-- Update: New package download sites -- Adrian Aichner
-- Update: Sync etags to pot_etags_version 17.19 -- Stephen J. Turnbull
-- Update: Sync pop[ch] to Emacs -- Jerry James
-- Update: Update to 2003 version of ISO 8859-7 table -- Aidan Kehoe
Build Infrastructure
-- Fix: Allow lowercase file names in mswin SDK -- Benson Margulies
-- Fix: Avoid using Motif for cygwin -- Dr. Volker Zell
-- Fix: C is not C++ -- Robert Pluim
-- Fix: Check for u_int*_t typedefs -- Dr. Volker Zell
-- Fix: Correct help strings, remove obsolete configure.* files -- Stephen J. Turnbull
-- Fix: Documentation of --with-error-checking options -- Stephen J. Turnbull
-- Fix: Don't call ichar_to_unicode on non-MULE -- Mike Sperber
-- Fix: Enable SYSTEM_MALLOC on ppc64, alpha and ia64 systems -- Malcolm Purvis
-- Fix: Make user-defined directories work in configure -- Mike Sperber
-- Fix: Register --enable and --with forms with the option checking list -- Malcolm Purvis
-- Fix: Remove Autoconf 2.13-isms -- Stephen J. Turnbull
-- Fix: Revert workaround for now-fixed Cygwin bug of missing d_ino field -- Dr. Volker Zell
-- Fix: Typo in configure shell syntax -- Jerry James
-- Fix: Use $EGREP, not egrep -- Malcolm Purvis
-- Fix: Use new Cygwin XPM lib name -- Rick Rankin
-- Fix: Work around m4_cdr change -- Malcolm Purvis
-- Fix: `config.status --recheck' bug in Autoconf 2.60/2.61 -- Malcolm Purvis
-- Fix: char type correctness -- Vin Shelton, Aidan Kehoe
-- Fix: configure debugger init files correctly -- Stephen J. Turnbull
-- Improve: Conditionalize GCC warnings on version -- Jerry James
-- Improve: Create $srcdir/src/depend if missing -- Stephen J. Turnbull
-- Improve: Detect Intel Macs, use POSIX-style write barrier in NewGC -- Marcus Crestani
-- Improve: Refactor Canna detection -- Stephen J. Turnbull
-- Improve: Setup kit configuration -- Vin Shelton
improvement -- debugger init sources can use XCOMM convention
-- New: Check for utilities that are not on "normal" Solaris PATH -- Stephen J. Turnbull, S L Baur
Documentation
-- Fix: Description of kanji read syntax, size of Ichar (now 21 bits) -- Aidan Kehoe
-- Fix: Improve docstrings -- Stephen J. Turnbull, Aidan Kehoe
-- Fix: Make manual conform to reality -- Malcolm Purvis, Robert Pluim, Aidan Kehoe, Stephen J. Turnbull
-- Fix: New compatibility alias string-to-char-list -- Vin Shelton, Ville Skytt
-- Fix: Typo fixes in manual -- Stephen J. Turnbull, Aidan Kehoe
-- Fix: Update FSF address -- Jerry James, Stephen Turnbull
-- Fix: Update copyrights -- Stephen J. Turnbull
-- Improve: Small rephrasing in TUTORIAL.de -- Adrian Aichner, hroptatyr
-- New: Describe X errors when using ssh in PROBLEMS -- Malcolm Purvis
-- New: Describe XFree86 crash in PROBLEMS -- Stephen J. Turnbull, Aidan Kehoe
-- New: Describe how X11R7 loses x11/bitmaps/gray in PROBLEMS -- Stephen J. Turnbull
-- Update: Addresses in files and ChangeLogs -- Adrian Aichner, Stephen J. Turnbull
Lisp API
-- Fix: Catch error in cloning language environment -- Aidan Kehoe
-- Fix: Make shell-command use requested output buffer -- Jerry James
-- fix: xft-version is now DEVAR_CONST_INT.
-- Improve: Face initialization and specification -- Aidan Kehoe
-- Improve: Make `split-char' available in no-mule -- Aidan Kehoe
-- Improve: New unicode-type property of Unicode coding systems -- Aidan Kehoe
-- Improve: Reorganize Mule lisp -- Aidan Kehoe
-- New: Full access to FcConfig objects -- Stephen J. Turnbull
-- New: ccl-compile-mule-to-unicode, ccl-compile-unicode-to-mule, ccl-dump-mule-to-unicode, ccl-dump-unicode-to-mule -- Aidan Kehoe
-- New: deprecate set-charset-registry, charset-registry -- Aidan Kehoe
-- New: font-lock-keywords-alist, font-lock-removed-keywords-alist, font-lock-add-keywords, font-lock-update-removed-keyword-alist, font-lock-remove-keywords -- Adrian Aichner
-- New: set-charset-registries, charset-registries -- Aidan Kehoe
-- New: x-coverage-instantiator specifier tag identifies Unicode fallbacks -- Aidan Kehoe
-- Update: Sync font-lock-add-keywords and font-lock-remove-keywords from GNU Emacs. -- Adrian Aichner
Internal API and Implementation
-- Fix: Dead code elimination in font-mgr -- Stephen J. Turnbull
-- Fix: Eliminate buffer overflows and NULL pointer references -- Jerry James, Adrian Aichner
-- Fix: Memory leaks -- Jerry James
-- Fix: Mule correctness with strings passed to warning functions -- Aidan Kehoe
-- Fix: Syntax errors -- Aidan Kehoe
-- Fix: Typo in string_direct_data_description -- Marcus Crestani
-- Fix: Use defined APIs -- Stephen J. Turnbull, Aidan Kehoe
-- Fix: Warning elimination -- Stephen J. Turnbull
-- Improve: Cache Xrm coding system -- Aidan Kehoe
-- Improve: GCPRO correctness -- Aidan Kehoe
-- Improve: NewGC fault handling -- Marcus Crestani
-- Improve: Reorganize and document separate_textual_runs -- Olivier Galibert, Stephen J. Turnbull
-- Improve: 21-bit Mule chars to support JIT charsets -- Aidan Kehoe
-- Update: Get Unicode tables with permissive license -- Stephen J. Turnbull, Mike Fabian
Testing and Debugging
-- Improve: Sort results of charset-in-* before comparing to expected. -- Aidan Kehoe
-- Improve: gdbinit.in recognizes new FcConfig objects -- Stephen J. Turnbull
-- New: Silence-Message macro in test-harness.el -- Stephen J. Turnbull
-- New: Test for ISO-2022 decoder not choking on invalid UTF-8 -- Aidan Kehoe
-- New: Test for copy-syntax-table bug -- Stephen Turnbull, Ralf Angeli
-- New: Test for correct usage of escape-quoted cookie -- Aidan Kehoe
-- New: Test for availability of input methods referenced in language environments -- Aidan Kehoe
-- New: Test raw strings -- Aidan Kehoe
-- New: Test Unicode non-BMP support -- Aidan Kehoe
* http://xemacs.org/Releases/21.5.27.html
* http://xemacs.org/Releases/21.5.26.html
* http://xemacs.org/Releases/21.5.25.html
* http://xemacs.org/Releases/21.5.24.html
INSTALLATION:
=============
To update your installation, click on the "Install Cygwin now" link on
the http://cygwin.com/ web page. This downloads setup.exe to your
system. Save it and run setup, answer the questions and pick up
the above mentioned package from the `Editors' category.
DOWNLOAD:
=========
Note that downloads from sources.redhat.com (aka cygwin.com) aren't
allowed due to bandwidth limitations. This means that you will need
to find a mirror which has this update, please choose the one nearest to
you: http://cygwin.com/mirrors.html
QUESTIONS:
==========
If you want to make a point or ask a question the Cygwin mailing
list is the appropriate place.
CYGWIN-ANNOUNCE UNSUBSCRIBE INFO:
=================================
To unsubscribe to the cygwin-announce mailing list, look at the
"List-Unsubscribe: " tag in the email header of this message. Send
email to the address specified there. It will be in the format:
cygwin-announce-unsubscribe-YOU=YOURDOMAIN.COM(a)cygwin.com
If you need more information on unsubscribing, start reading here:
http://sources.redhat.com/lists.html#unsubscribe-simple
Please read *all* of the information on unsubscribing that is available
starting at this URL.
Enjoy
Volker
_______________________________________________
XEmacs-Beta mailing list
XEmacs-Beta(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-beta
[Test Failure] XEmacs 21.5-b28 "fuki" (+CVS-20071204) i586-pc-win32
17 years
Adrian Aichner
I get these crashes now.
Not sure yet whether some local changes have to do with this.
The crash is in the following spot in eval.c:
{
funcall_subr:
PROFILE_ENTER_FUNCTION ();
=======> FUNCALL_SUBR (val, subr, fun_args, max_args);
PROFILE_EXIT_FUNCTION ();
}"
i 2007/12/05 08:56:00 [[XEmacs]]: "crash during [make check-temacs] from latest CVS
assert_failed(const char * 0x01d23000, int 8571376, const char * 0x0082caac) line 3982
Ffuncall(int 17357754, Lisp_Object * 0x026766d8) line 3940 + 226 bytes
Feval(Lisp_Object {...}) line 3558 + 6 bytes"
o 2007/12/05 08:56:00
i 2007/12/05 08:57:30 [[XEmacs]]: "Crash during [make check] from latest CVS
assert_failed(const char * 0x02c6e0a8, int 8571616, const char * 0x0082cb9c) line 3982
Ffuncall(int 17357754, Lisp_Object * 0x035d20d8) line 3940 + 226 bytes
Feval(Lisp_Object {...}) line 3558 + 6 bytes"
o 2007/12/05 08:57:30
Best regards!
Adrian
> XEmacs Build Report generated by emacs-version
> 21.5 (beta28) "fuki" (+CVS-20071014) XEmacs Lucid
> with system-configuration
> i586-pc-win32
> follows:
> Contents of c:\Hacking\cvs.xemacs.org\XEmacs\xemacs-21.5-clean\Installation:
> (Output from most recent run of ./configure)
OS version:
Microsoft Windows XP [Version 5.1.2600]
OS: Windows_NT
XEmacs 21.5-b28 "fuki" (+CVS-20071204) configured for `i586-pc-win32'.
Building XEmacs using "NMAKE".
Building XEmacs using make flags " ".
Building XEmacs in source tree "c:\\Hacking\\cvs.xemacs.org\\XEmacs\\xemacs-21.5-clean".
For src, using compiler "cl -nologo -W3 -DSTRICT -Zi -O2 -G5 -Ob2 -MDd -c -TP -Ic:\Hacking\cvs.xemacs.org\XEmacs\xemacs-21.5-clean\nt\inc -Ic:\Hacking\cvs.xemacs.org\XEmacs\xemacs-21.5-clean\src -I"c:\Hacking\libs4xemacs\xpm-3.4k" -I"c:\Hacking\libs4xemacs\xpm-3.4k\lib" -I"c:\Hacking\libs4xemacs\libpng-1.2.20" -I"c:\Hacking\libs4xemacs\zlib" -I"c:\Hacking\libs4xemacs\tiff-v3.4\libtiff" -I"c:\Hacking\libs4xemacs\jpeg-6b" -I"c:\Hacking\libs4xemacs\compface" -I"c:\Hacking\libs4xemacs\zlib" -DHAVE_MS_WINDOWS -DHAVE_MENUBARS -DHAVE_SCROLLBARS -DHAVE_TOOLBARS -DHAVE_WIDGETS -DHAVE_DIALOGS -DHAVE_XPM -DFOR_MSW -DHAVE_GIF -DHAVE_PNG -DHAVE_TIFF -DHAVE_JPEG -DHAVE_XFACE -DHAVE_ZLIB -DHAVE_NATIVE_SOUND -DMULE -DUSE_UNION_TYPE -DPDUMP -DNEW_GC -DUSE_KKCC -DSYSTEM_MALLOC -DDEBUG_XEMACS -D_DEBUG -DWIN32_LEAN_AND_MEAN -DWIN32_NATIVE -Demacs -DHAVE_CONFIG_H -DPATH_VERSION=\"21.5-b28\" -DPATH_PROGNAME=\"xemacs\" -DEMACS_VERSION=\"21.5-b28\" -DEMACS_PROGNAME=\"xemacs\" -DSTAC!
K_TRACE_EYE_CATCHER=xemacs_21_5_b28_i586_pc_win32 -DPATH_PREFIX=\"..\" -DEMACS_MAJOR_VERSION=21 -DEMACS_MINOR_VERSION=5 -DEMACS_BETA_VERSION=28 -DXEMACS_CODENAME=\""fuki"\" -DXEMACS_EXTRA_NAME=\"(+CVS-20071204)\" -DEMACS_CONFIGURATION=\"i586-pc-win32\"".
For lib-src, using compiler "cl -nologo -W3 -DSTRICT -Zi -O2 -G5 -Ob2 -MDd -Ic:\Hacking\cvs.xemacs.org\XEmacs\xemacs-21.5-clean\lib-src -Ic:\Hacking\cvs.xemacs.org\XEmacs\xemacs-21.5-clean\src -DHAVE_CONFIG_H -DWIN32_NATIVE".
Compiling as C++.
Installing XEmacs in "c:\\Program Files\\XEmacs\\XEmacs-21.5-b28".
Compiling in support for Microsoft Windows native GUI.
Compiling in international (MULE) support.
Compiling in support for XPM images.
Compiling in support for GIF images.
Compiling in support for PNG images.
Compiling in support for TIFF images.
Compiling in support for JPEG images.
Compiling in support for X-Face message headers.
Compiling in support for GZIP compression/decompression.
Compiling in support for toolbars.
Compiling in support for dialogs.
Compiling in support for widgets.
Compiling in support for native sounds.
Using union type for Lisp object storage.
NOTE: ---------------------------------------------------------
NOTE: This tends to trigger compiler bugs, especially when combined
NOTE: with MULE and ERROR_CHECKING. Crashes in pdump have recently
NOTE: been observed using Visual C++ in combination with union type,
NOTE: MULE, and ERROR_CHECKING.
NOTE: ---------------------------------------------------------
Using portable dumper.
Using system malloc.
Using DLL version of C runtime library.
Compiling in debugging support (no slowdown).
Compiling with optimization.
Using new experimental GC mark algorithms.
Using new experimental incremental garbage collector and new allocator.
> Contents of c:\Hacking\cvs.xemacs.org\XEmacs\xemacs-21.5-clean\xemacs-21.5-clean-cvs-update.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-+\|^[A-Z] [^ ]+$\|^Wrong number of arguments:\|^ \*\* "
> and then deleting lines matching
> "confl.*with.*auto-inlining\|^Formatting:"
cd c:\Hacking\cvs.xemacs.org\XEmacs\xemacs-21.5-clean\
Compilation started at Wed Dec 05 08:18:28 2007 +0100 (W. Europe Standard Time)
? gunzip-error.txt
? man/lispref/errors.texi.new
? nt/xemacs-21.5-clean-make-all-internal-compiler-error-not-cpp.err
? nt/xemacs-21.5-clean-make-all-internal-compiler-error.err
? nt/xemacs-21.5-clean-make-all-texinfo-error.err
P version.sh
M info/dir
P lisp/ChangeLog
P lisp/autoload.el
P lisp/bytecomp.el
M lisp/package-get.el
M lisp/process.el
U lisp/mule/iso-with-esc.el
M src/ChangeLog
M src/eval.c
P src/file-coding.c
M src/fileio.c
M src/frame-msw.c
M src/gc.c
M src/glyphs.c
M src/profile.c
P tests/ChangeLog
P tests/automated/mule-tests.el
M tests/automated/region-tests.el
Compilation finished at Wed Dec 05 08:20:07
> Contents of c:\Hacking\cvs.xemacs.org\XEmacs\xemacs-21.5-clean\nt\xemacs-21.5-clean-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-+\|^[A-Z] [^ ]+$\|^Wrong number of arguments:\|^ \*\* "
> and then deleting lines matching
> "confl.*with.*auto-inlining\|^Formatting:"
cd c:\Hacking\cvs.xemacs.org\XEmacs\xemacs-21.5-clean\nt\
nmake /f xemacs.mak all
Compilation started at Wed Dec 05 08:49:23 2007 +0100 (W. Europe Standard Time)
Installing XEmacs in "c:\\Program Files\\XEmacs\\XEmacs-21.5-b28".
1 file(s) copied.
1 File(s) copied
1 File(s) copied
c:\Hacking\cvs.xemacs.org\XEmacs\xemacs-21.5-clean\src\text.c(2180) : warning C4390: ';' : empty controlled statement found; is this the intent?
Using load-path (c:\Hacking\cvs.xemacs.org\XEmacs\xemacs-21.5-clean\lisp\)
Using module-load-path (c:\Hacking\cvs.xemacs.org\XEmacs\xemacs-21.5-clean\modules)
Generating autoloads for lisp/next-error.el...
While compiling call-process-internal in file c:\Hacking\cvs.xemacs.org\XEmacs\xemacs-21.5-clean\lisp\process.el:
** variable proc-mark bound but not referenced
While compiling the end of the data in file c:\Hacking\cvs.xemacs.org\XEmacs\xemacs-21.5-clean\lisp\mule\mule-cmds.el:
** the function set-console-tty-coding-system is not known to be defined.
While compiling make-8-bit-generate-helper in file c:\Hacking\cvs.xemacs.org\XEmacs\xemacs-21.5-clean\lisp\mule\mule-coding.el:
** variable args-out-of-range bound but not referenced
Using load-path (c:\Hacking\cvs.xemacs.org\XEmacs\xemacs-21.5-clean\lisp\)
Using module-load-path (c:\Hacking\cvs.xemacs.org\XEmacs\xemacs-21.5-clean\modules)
Warning: doc lost for function unicode-error-translate-region.
Warning: doc lost for function frob-unicode-errors-region.
While compiling x-win-init-xfree86 in file c:\Hacking\cvs.xemacs.org\XEmacs\xemacs-21.5-clean\lisp\x-win-xfree86.el:
** assignment to free variable x-us-keymap-first-keycode
** assignment to free variable x-us-keymap-description
While compiling x-win-init-sun in file c:\Hacking\cvs.xemacs.org\XEmacs\xemacs-21.5-clean\lisp\x-win-sun.el:
** assignment to free variable x-us-keymap-first-keycode
** assignment to free variable x-us-keymap-description
While compiling the end of the data in file c:\Hacking\cvs.xemacs.org\XEmacs\xemacs-21.5-clean\lisp\x-font-menu.el:
** The following functions are not known to be defined:
fc-find-available-weights-for-family,
fc-find-available-font-families, xlfd-font-name-p, fc-font-match,
fc-name-parse, fc-pattern-get-family, fc-pattern-get-successp,
fc-pattern-get-weight, fc-pattern-get-size, fc-pattern-get-slant,
fc-font-weight-translate-to-string,
fc-font-slant-translate-to-string, make-fc-pattern,
fc-pattern-add-family, fc-pattern-add-weight,
fc-font-weight-translate-from-string, fc-pattern-add-size,
fc-pattern-add-slant, fc-font-slant-translate-from-string,
fc-name-unparse
While compiling the end of the data in file c:\Hacking\cvs.xemacs.org\XEmacs\xemacs-21.5-clean\lisp\x-faces.el:
** the function default-x-device is not known to be defined.
Requiring next-error...
Compiling c:\Hacking\cvs.xemacs.org\XEmacs\xemacs-21.5-clean\lisp\next-error.el...
Wrote c:\Hacking\cvs.xemacs.org\XEmacs\xemacs-21.5-clean\lisp\next-error.elc
While compiling the end of the data in file c:\Hacking\cvs.xemacs.org\XEmacs\xemacs-21.5-clean\lisp\fontconfig.el:
** the function default-x-device is not known to be defined.
While compiling xft-font-create-object in file c:\Hacking\cvs.xemacs.org\XEmacs\xemacs-21.5-clean\lisp\font.el:
** attempt to inline fc-pattern-get-family before it was defined
** attempt to inline fc-pattern-get-size before it was defined
** attempt to inline fc-pattern-get-weight before it was defined
While compiling xft-font-create-name:
** attempt to inline fc-pattern-add-family before it was defined
** attempt to inline fc-pattern-add-size before it was defined
While compiling the end of the data:
** the function default-x-device is not known to be defined.
While compiling ethio-modify-vowel in file c:\Hacking\cvs.xemacs.org\XEmacs\xemacs-21.5-clean\lisp\mule\ethio-util.el:
** decompose-composite-char is an obsolete function; use char-to-string instead.
While compiling cyrillic-encode-koi8-r-char in file c:\Hacking\cvs.xemacs.org\XEmacs\xemacs-21.5-clean\lisp\mule\cyril-util.el:
** reference to free variable cyrillic-koi8-r-to-external-code-table
While compiling cyrillic-encode-alternativnyj-char:
** reference to free variable cyrillic-alternativnyj-to-external-code-table
Computing custom-loads for next-error...
Compilation finished at Wed Dec 05 08:53:33
> Contents of c:\Hacking\cvs.xemacs.org\XEmacs\xemacs-21.5-clean\nt\xemacs-21.5-clean-make-check-temacs.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-+\|^[A-Z] [^ ]+$\|^Wrong number of arguments:\|^ \*\* "
> and then deleting lines matching
> "confl.*with.*auto-inlining\|^Formatting:"
cd c:\Hacking\cvs.xemacs.org\XEmacs\xemacs-21.5-clean\nt\
nmake /f xemacs.mak check-temacs
Compilation started at Wed Dec 05 08:53:56 2007 +0100 (W. Europe Standard Time)
Using load-path (c:\Hacking\cvs.xemacs.org\XEmacs\xemacs-21.5-clean\lisp\)
Using module-load-path (c:\Hacking\cvs.xemacs.org\XEmacs\xemacs-21.5-clean\modules)
Warning: doc lost for function unicode-error-translate-region.
Warning: doc lost for function frob-unicode-errors-region.
base64-tests.el: 1234 of 1234 tests successful (100%).
0 errors that should have been generated, but weren't
0 wrong-error failures
byte-compiler-tests.el: 66 of 66 tests successful (100%).
38 tests skipped because can't defadvice.
0 errors that should have been generated, but weren't
0 wrong-error failures
Fatal error: assertion failed, file c:\Hacking\cvs.xemacs.org\XEmacs\xemacs-21.5-clean\src\tests.c, line 141, (len) == sizeof (ext_latin12) - 1
Fatal error.
# (condition-case ... . ((cl-assertion-failed (Print-Failure (if nil "Assertion failed: %S; failing case = %S" "Assertion failed: %S") (quote (eq (quote PASS) (funcall fun))) nil) (incf assertion-failures)) (t (Print-Failure (if nil "%S ==> error: %S; failing case = %S" "%S ==> error: %S") (quote (eq (quote PASS) (funcall fun))) error-info nil) (incf other-failures))))
(condition-case error-info (progn (assert (eq (quote PASS) (funcall fun))) (Print-Pass "%S" (quote (eq (quote PASS) (funcall fun)))) (incf passes)) (cl-assertion-failed (Print-Failure (if nil "Assertion failed: %S; failing case = %S" "Assertion failed: %S") (quote (eq (quote PASS) (funcall fun))) nil) (incf assertion-failures)) (t (Print-Failure (if nil "%S ==> error: %S; failing case = %S" "%S ==> error: %S") (quote (eq (quote PASS) (funcall fun))) error-info nil) (incf other-failures)))
(lambda nil (defvar passes) (defvar assertion-failures) (defvar no-error-failures) (defvar wrong-error-failures) (defvar missing-message-failures) (defvar other-failures) (defvar trick-optimizer) (eval-when-compile (condition-case nil (require (quote test-harness)) (file-error (push "." load-path) (when (and (boundp (quote load-file-name)) (stringp load-file-name)) (push (file-name-directory load-file-name) load-path)) (require (quote test-harness))))) (when (boundp (quote test-function-list)) (loop for fun in test-function-list do (Assert (eq (quote PASS) (funcall fun))))))()
funcall((lambda nil (defvar passes) (defvar assertion-failures) (defvar no-error-failures) (defvar wrong-error-failures) (defvar missing-message-failures) (defvar other-failures) (defvar trick-optimizer) (eval-when-compile (condition-case nil (require (quote test-harness)) (file-error (push "." load-path) (when (and (boundp (quote load-file-name)) (stringp load-file-name)) (push (file-name-directory load-file-name) load-path)) (require (quote test-harness))))) (when (boundp (quote test-function-list)) (loop for fun in test-function-list do (Assert (eq (quote PASS) (funcall fun)))))))
# (condition-case ... . ((error (incf unexpected-test-file-failures) (princ (format "Unexpected error %S while executing interpreted code\n" error-info)) (message "Unexpected error %S while executing interpreted code." error-info) (message "Test suite execution aborted." error-info))))
(condition-case error-info (funcall (test-harness-read-from-buffer inbuffer)) (error (incf unexpected-test-file-failures) (princ (format "Unexpected error %S while executing interpreted code\n" error-info)) (message "Unexpected error %S while executing interpreted code." error-info) (message "Test suite execution aborted." error-info)))
(with-output-to-temp-buffer "*Test-Log*" (princ (format "Testing %s...\n\n" filename)) (defconst test-harness-failure-tag "FAIL") (defconst test-harness-success-tag "PASS") (defmacro Known-Bug-Expect-Failure (&rest body) (backquote (let ((test-harness-failure-tag "KNOWN BUG") (test-harness-success-tag "PASS (FAILURE EXPECTED)")) (\,@ body)))) (defmacro Implementation-Incomplete-Expect-Failure (&rest body) (backquote (let ((test-harness-failure-tag "IMPLEMENTATION INCOMPLETE") (test-harness-success-tag "PASS (FAILURE EXPECTED)")) (\,@ body)))) (defun Print-Failure (fmt &rest args) (setq fmt (format "%s: %s" test-harness-failure-tag fmt)) (if (noninteractive) (apply (function message) fmt args)) (princ (concat (apply (function format) fmt args) "\n"))) (defun Print-Pass (fmt &rest args) (setq fmt (format "%s: %s" test-harness-success-tag fmt)) (and test-harness-verbose (princ (concat (apply (function format) fmt args) "\n")))) (defun Print-Skip (test reason &optional fmt &re!
st args) (setq fmt (concat "SKIP: %S BECAUSE %S" fmt)) (princ (concat (apply (function format) fmt test reason args) "\n"))) (defmacro Skip-Test-Unless (condition reason description &rest body) "Unless CONDITION is satisfied, skip test BODY.\nREASON is a description of the condition failure, and must be unique (it\nis used as a hash key). DESCRIPTION describes the tests that were skipped.\nBODY is a sequence of expressions and may contain several tests." (backquote (if (not (\, condition)) (let ((count (gethash (\, reason) skipped-test-reasons))) (puthash (\, reason) (if (null count) 1 (1+ count)) skipped-test-reasons) (Print-Skip (\, description) (\, reason))) (\,@ body)))) (defmacro Assert (assertion &optional failing-case) (backquote (condition-case error-info (progn (assert (\, assertion)) (Print-Pass "%S" (quote (\, assertion))) (incf passes)) (cl-assertion-failed (Print-Failure (if (\, failing-case) "Assertion failed: %S; failing case = %S" "Assertion failed: %S") (q!
uote (\, assertion)) (\, failing-case)) (incf assertion-failur!
es)) (t
(Print-Failure (if (\, failing-case) "%S ==> error: %S; failing case = %S" "%S ==> error: %S") (quote (\, assertion)) error-info (\, failing-case)) (incf other-failures))))) (defmacro Check-Error (expected-error &rest body) (let ((quoted-body (if (= 1 (length body)) (backquote (quote (\, (car body)))) (backquote (quote (progn (\,@ body))))))) (backquote (condition-case error-info (progn (setq trick-optimizer (progn (\,@ body))) (Print-Failure "%S executed successfully, but expected error %S" (\, quoted-body) (quote (\, expected-error))) (incf no-error-failures)) ((\, expected-error) (Print-Pass "%S ==> error %S, as expected" (\, quoted-body) (quote (\, expected-error))) (incf passes)) (error (Print-Failure "%S ==> expected error %S, got error %S instead" (\, quoted-body) (quote (\, expected-error)) error-info) (incf wrong-error-failures)))))) (defmacro Check-Error-Message (expected-error expected-error-regexp &rest body) (let ((quoted-body (if (= 1 (length body)) (backquote!
(quote (\, (car body)))) (backquote (quote (progn (\,@ body))))))) (backquote (condition-case error-info (progn (setq trick-optimizer (progn (\,@ body))) (Print-Failure "%S executed successfully, but expected error %S" (\, quoted-body) (quote (\, expected-error))) (incf no-error-failures)) ((\, expected-error) (let ((error-message (second error-info))) (if (string-match (\, expected-error-regexp) error-message) (progn (Print-Pass "%S ==> error %S %S, as expected" (\, quoted-body) error-message (quote (\, expected-error))) (incf passes)) (Print-Failure "%S ==> got error %S as expected, but error message %S did not match regexp %S" (\, quoted-body) (quote (\, expected-error)) error-message (\, expected-error-regexp)) (incf wrong-error-failures)))) (error (Print-Failure "%S ==> expected error %S, got error %S instead" (\, quoted-body) (quote (\, expected-error)) error-info) (incf wrong-error-failures)))))) (defmacro Check-Message (expected-message-regexp &rest body) (Skip-Tes!
t-Unless (fboundp (quote defadvice)) "can't defadvice" expecte!
d-messag
e-regexp (let ((quoted-body (if (= 1 (length body)) (backquote (quote (\, (car body)))) (backquote (quote (progn (\,@ body))))))) (backquote (let ((messages "")) (defadvice message (around collect activate) (defvar messages) (let ((msg-string (apply (quote format) (ad-get-args 0)))) (setq messages (concat messages msg-string)) msg-string)) (condition-case error-info (progn (setq trick-optimizer (progn (\,@ body))) (if (string-match (\, expected-message-regexp) messages) (progn (Print-Pass "%S ==> value %S, message %S, matching %S, as expected" (\, quoted-body) trick-optimizer messages (quote (\, expected-message-regexp))) (incf passes)) (Print-Failure "%S ==> value %S, message %S, NOT matching expected %S" (\, quoted-body) trick-optimizer messages (quote (\, expected-message-regexp))) (incf missing-message-failures))) (error (Print-Failure "%S ==> unexpected error %S" (\, quoted-body) error-info) (incf other-failures))) (ad-unadvise (quote message))))))) (defmacro Silence-Me!
ssage (&rest body) (backquote (flet ((append-message (&rest args) nil)) (\,@ body)))) (defmacro Ignore-Ebola (&rest body) (backquote (let ((debug-issue-ebola-notices -42)) (\,@ body)))) (defun Int-to-Marker (pos) (save-excursion (set-buffer standard-output) (save-excursion (goto-char pos) (point-marker)))) (princ "Testing Interpreted Lisp\n\n") (condition-case error-info (funcall (test-harness-read-from-buffer inbuffer)) (error (incf unexpected-test-file-failures) (princ (format "Unexpected error %S while executing interpreted code\n" error-info)) (message "Unexpected error %S while executing interpreted code." error-info) (message "Test suite execution aborted." error-info))) (princ "\nTesting Compiled Lisp\n\n") (let (code (test-harness-test-compiled t)) (condition-case error-info (setq code (letf (((symbol-function (quote byte-compile-warn)) (quote ignore))) (byte-compile (test-harness-read-from-buffer inbuffer)))) (error (princ (format "Unexpected error %S while byte-co!
mpiling code\n" error-info)))) (condition-case error-info (if !
code (fu
ncall code)) (error (incf unexpected-test-file-failures) (princ (format "Unexpected error %S while executing byte-compiled code\n" error-info)) (message "Unexpected error %S while executing byte-compiled code." error-info) (message "Test suite execution aborted." error-info)))) (princ (format "\nSUMMARY for %s:\n" filename)) (princ (format " %5d passes\n" passes)) (princ (format " %5d assertion failures\n" assertion-failures)) (princ (format " %5d errors that should have been generated, but weren't\n" no-error-failures)) (princ (format " %5d wrong-error failures\n" wrong-error-failures)) (princ (format " %5d missing-message failures\n" missing-message-failures)) (princ (format " %5d other failures\n" other-failures)) (let* ((total (+ passes assertion-failures no-error-failures wrong-error-failures missing-message-failures other-failures)) (basename (file-name-nondirectory filename)) (summary-msg (if (> total 0) (format test-harness-file-summary-template (concat basename ":")!
passes total (/ (* 100 passes) total)) (format test-harness-null-summary-template (concat basename ":")))) (reasons "")) (maphash (lambda (key value) (setq reasons (concat reasons (format "\n %d tests skipped because %s." value key)))) skipped-test-reasons) (when (> (length reasons) 1) (setq summary-msg (concat summary-msg reasons "\n Probably XEmacs cannot find your installed packages. Set EMACSPACKAGEPATH\n to the package hierarchy root or configure with --package-path to enable\n the skipped tests."))) (setq test-harness-file-results-alist (cons (list filename passes total) test-harness-file-results-alist)) (message "%s" summary-msg)) (when (> unexpected-test-file-failures 0) (setq unexpected-test-suite-failure-files (cons filename unexpected-test-suite-failure-files)) (setq unexpected-test-suite-failures (+ unexpected-test-suite-failures unexpected-test-file-failures)) (message "Test suite execution failed unexpectedly.")) (fmakunbound (quote Assert)) (fma!
kunbound (quote Check-Error)) (fmakunbound (quote Check-Messag!
e)) (fma
kunbound (quote Check-Error-Message)) (fmakunbound (quote Ignore-Ebola)) (fmakunbound (quote Int-to-Marker)) (and noninteractive (message "%s" (buffer-substring-no-properties nil nil "*Test-Log*"))))
# bind (pass-stream debug-on-error trick-optimizer skipped-test-reasons unexpected-test-file-failures other-failures missing-message-failures wrong-error-failures no-error-failures assertion-failures passes)
(let ((passes 0) (assertion-failures 0) (no-error-failures 0) (wrong-error-failures 0) (missing-message-failures 0) (other-failures 0) (unexpected-test-file-failures 0) (skipped-test-reasons (make-hash-table :test (quote equal))) (trick-optimizer nil) (debug-on-error t) (pass-stream nil)) (with-output-to-temp-buffer "*Test-Log*" (princ (format "Testing %s...\n\n" filename)) (defconst test-harness-failure-tag "FAIL") (defconst test-harness-success-tag "PASS") (defmacro Known-Bug-Expect-Failure (&rest body) (backquote (let ((test-harness-failure-tag "KNOWN BUG") (test-harness-success-tag "PASS (FAILURE EXPECTED)")) (\,@ body)))) (defmacro Implementation-Incomplete-Expect-Failure (&rest body) (backquote (let ((test-harness-failure-tag "IMPLEMENTATION INCOMPLETE") (test-harness-success-tag "PASS (FAILURE EXPECTED)")) (\,@ body)))) (defun Print-Failure (fmt &rest args) (setq fmt (format "%s: %s" test-harness-failure-tag fmt)) (if (noninteractive) (apply (function message) fmt a!
rgs)) (princ (concat (apply (function format) fmt args) "\n"))) (defun Print-Pass (fmt &rest args) (setq fmt (format "%s: %s" test-harness-success-tag fmt)) (and test-harness-verbose (princ (concat (apply (function format) fmt args) "\n")))) (defun Print-Skip (test reason &optional fmt &rest args) (setq fmt (concat "SKIP: %S BECAUSE %S" fmt)) (princ (concat (apply (function format) fmt test reason args) "\n"))) (defmacro Skip-Test-Unless (condition reason description &rest body) "Unless CONDITION is satisfied, skip test BODY.\nREASON is a description of the condition failure, and must be unique (it\nis used as a hash key). DESCRIPTION describes the tests that were skipped.\nBODY is a sequence of expressions and may contain several tests." (backquote (if (not (\, condition)) (let ((count (gethash (\, reason) skipped-test-reasons))) (puthash (\, reason) (if (null count) 1 (1+ count)) skipped-test-reasons) (Print-Skip (\, description) (\, reason))) (\,@ body)))) (defmacro Ass!
ert (assertion &optional failing-case) (backquote (condition-c!
ase erro
r-info (progn (assert (\, assertion)) (Print-Pass "%S" (quote (\, assertion))) (incf passes)) (cl-assertion-failed (Print-Failure (if (\, failing-case) "Assertion failed: %S; failing case = %S" "Assertion failed: %S") (quote (\, assertion)) (\, failing-case)) (incf assertion-failures)) (t (Print-Failure (if (\, failing-case) "%S ==> error: %S; failing case = %S" "%S ==> error: %S") (quote (\, assertion)) error-info (\, failing-case)) (incf other-failures))))) (defmacro Check-Error (expected-error &rest body) (let ((quoted-body (if (= 1 (length body)) (backquote (quote (\, (car body)))) (backquote (quote (progn (\,@ body))))))) (backquote (condition-case error-info (progn (setq trick-optimizer (progn (\,@ body))) (Print-Failure "%S executed successfully, but expected error %S" (\, quoted-body) (quote (\, expected-error))) (incf no-error-failures)) ((\, expected-error) (Print-Pass "%S ==> error %S, as expected" (\, quoted-body) (quote (\, expected-error))) (incf passes)) (err!
or (Print-Failure "%S ==> expected error %S, got error %S instead" (\, quoted-body) (quote (\, expected-error)) error-info) (incf wrong-error-failures)))))) (defmacro Check-Error-Message (expected-error expected-error-regexp &rest body) (let ((quoted-body (if (= 1 (length body)) (backquote (quote (\, (car body)))) (backquote (quote (progn (\,@ body))))))) (backquote (condition-case error-info (progn (setq trick-optimizer (progn (\,@ body))) (Print-Failure "%S executed successfully, but expected error %S" (\, quoted-body) (quote (\, expected-error))) (incf no-error-failures)) ((\, expected-error) (let ((error-message (second error-info))) (if (string-match (\, expected-error-regexp) error-message) (progn (Print-Pass "%S ==> error %S %S, as expected" (\, quoted-body) error-message (quote (\, expected-error))) (incf passes)) (Print-Failure "%S ==> got error %S as expected, but error message %S did not match regexp %S" (\, quoted-body) (quote (\, expected-error)) error-message !
(\, expected-error-regexp)) (incf wrong-error-failures)))) (er!
ror (Pri
nt-Failure "%S ==> expected error %S, got error %S instead" (\, quoted-body) (quote (\, expected-error)) error-info) (incf wrong-error-failures)))))) (defmacro Check-Message (expected-message-regexp &rest body) (Skip-Test-Unless (fboundp (quote defadvice)) "can't defadvice" expected-message-regexp (let ((quoted-body (if (= 1 (length body)) (backquote (quote (\, (car body)))) (backquote (quote (progn (\,@ body))))))) (backquote (let ((messages "")) (defadvice message (around collect activate) (defvar messages) (let ((msg-string (apply (quote format) (ad-get-args 0)))) (setq messages (concat messages msg-string)) msg-string)) (condition-case error-info (progn (setq trick-optimizer (progn (\,@ body))) (if (string-match (\, expected-message-regexp) messages) (progn (Print-Pass "%S ==> value %S, message %S, matching %S, as expected" (\, quoted-body) trick-optimizer messages (quote (\, expected-message-regexp))) (incf passes)) (Print-Failure "%S ==> value %S, message %S, NOT match!
ing expected %S" (\, quoted-body) trick-optimizer messages (quote (\, expected-message-regexp))) (incf missing-message-failures))) (error (Print-Failure "%S ==> unexpected error %S" (\, quoted-body) error-info) (incf other-failures))) (ad-unadvise (quote message))))))) (defmacro Silence-Message (&rest body) (backquote (flet ((append-message (&rest args) nil)) (\,@ body)))) (defmacro Ignore-Ebola (&rest body) (backquote (let ((debug-issue-ebola-notices -42)) (\,@ body)))) (defun Int-to-Marker (pos) (save-excursion (set-buffer standard-output) (save-excursion (goto-char pos) (point-marker)))) (princ "Testing Interpreted Lisp\n\n") (condition-case error-info (funcall (test-harness-read-from-buffer inbuffer)) (error (incf unexpected-test-file-failures) (princ (format "Unexpected error %S while executing interpreted code\n" error-info)) (message "Unexpected error %S while executing interpreted code." error-info) (message "Test suite execution aborted." error-info))) (princ "\nTe!
sting Compiled Lisp\n\n") (let (code (test-harness-test-compil!
ed t)) (
condition-case error-info (setq code (letf (((symbol-function (quote byte-compile-warn)) (quote ignore))) (byte-compile (test-harness-read-from-buffer inbuffer)))) (error (princ (format "Unexpected error %S while byte-compiling code\n" error-info)))) (condition-case error-info (if code (funcall code)) (error (incf unexpected-test-file-failures) (princ (format "Unexpected error %S while executing byte-compiled code\n" error-info)) (message "Unexpected error %S while executing byte-compiled code." error-info) (message "Test suite execution aborted." error-info)))) (princ (format "\nSUMMARY for %s:\n" filename)) (princ (format " %5d passes\n" passes)) (princ (format " %5d assertion failures\n" assertion-failures)) (princ (format " %5d errors that should have been generated, but weren't\n" no-error-failures)) (princ (format " %5d wrong-error failures\n" wrong-error-failures)) (princ (format " %5d missing-message failures\n" missing-message-failures)) (princ (format " %5d other f!
ailures\n" other-failures)) (let* ((total (+ passes assertion-failures no-error-failures wrong-error-failures missing-message-failures other-failures)) (basename (file-name-nondirectory filename)) (summary-msg (if (> total 0) (format test-harness-file-summary-template (concat basename ":") passes total (/ (* 100 passes) total)) (format test-harness-null-summary-template (concat basename ":")))) (reasons "")) (maphash (lambda (key value) (setq reasons (concat reasons (format "\n %d tests skipped because %s." value key)))) skipped-test-reasons) (when (> (length reasons) 1) (setq summary-msg (concat summary-msg reasons "\n Probably XEmacs cannot find your installed packages. Set EMACSPACKAGEPATH\n to the package hierarchy root or configure with --package-path to enable\n the skipped tests."))) (setq test-harness-file-results-alist (cons (list filename passes total) test-harness-file-results-alist)) (message "%s" summary-msg)) (when (> unexpected-test-file-failures!
0) (setq unexpected-test-suite-failure-files (cons filename u!
nexpecte
d-test-suite-failure-files)) (setq unexpected-test-suite-failures (+ unexpected-test-suite-failures unexpected-test-file-failures)) (message "Test suite execution failed unexpectedly.")) (fmakunbound (quote Assert)) (fmakunbound (quote Check-Error)) (fmakunbound (quote Check-Message)) (fmakunbound (quote Check-Error-Message)) (fmakunbound (quote Ignore-Ebola)) (fmakunbound (quote Int-to-Marker)) (and noninteractive (message "%s" (buffer-substring-no-properties nil nil "*Test-Log*")))))
# (condition-case ... . ((error (princ ">>Error occurred processing ") (princ file) (princ ": ") (display-error error-info nil) (terpri) nil)))
(condition-case error-info (progn (test-emacs-test-file file) t) (error (princ ">>Error occurred processing ") (princ file) (princ ": ") (display-error error-info nil) (terpri) nil))
(or (batch-test-emacs-1 file-in-dir) (setq error t))
(if (and (string-match emacs-lisp-file-regexp file-in-dir) (not (or (auto-save-file-name-p file-in-dir) (backup-file-name-p file-in-dir) (equal (file-name-nondirectory file-in-dir) "test-harness.el")))) (or (batch-test-emacs-1 file-in-dir) (setq error t)))
(when (and (string-match emacs-lisp-file-regexp file-in-dir) (not (or (auto-save-file-name-p file-in-dir) (backup-file-name-p file-in-dir) (equal (file-name-nondirectory file-in-dir) "test-harness.el")))) (or (batch-test-emacs-1 file-in-dir) (setq error t)))
(while --dolist-temp--30603 (setq file-in-dir (car --dolist-temp--30603)) (when (and (string-match emacs-lisp-file-regexp file-in-dir) (not (or (auto-save-file-name-p file-in-dir) (backup-file-name-p file-in-dir) (equal (file-name-nondirectory file-in-dir) "test-harness.el")))) (or (batch-test-emacs-1 file-in-dir) (setq error t))) (setq --dolist-temp--30603 (cdr --dolist-temp--30603)))
(let ((--dolist-temp--30603 (directory-files file t)) file-in-dir) (while --dolist-temp--30603 (setq file-in-dir (car --dolist-temp--30603)) (when (and (string-match emacs-lisp-file-regexp file-in-dir) (not (or (auto-save-file-name-p file-in-dir) (backup-file-name-p file-in-dir) (equal (file-name-nondirectory file-in-dir) "test-harness.el")))) (or (batch-test-emacs-1 file-in-dir) (setq error t))) (setq --dolist-temp--30603 (cdr --dolist-temp--30603))) nil)
(catch (quote --cl-block-nil--) (let ((--dolist-temp--30603 (directory-files file t)) file-in-dir) (while --dolist-temp--30603 (setq file-in-dir (car --dolist-temp--30603)) (when (and (string-match emacs-lisp-file-regexp file-in-dir) (not (or (auto-save-file-name-p file-in-dir) (backup-file-name-p file-in-dir) (equal (file-name-nondirectory file-in-dir) "test-harness.el")))) (or (batch-test-emacs-1 file-in-dir) (setq error t))) (setq --dolist-temp--30603 (cdr --dolist-temp--30603))) nil))
(cl-block-wrapper (catch (quote --cl-block-nil--) (let ((--dolist-temp--30603 (directory-files file t)) file-in-dir) (while --dolist-temp--30603 (setq file-in-dir (car --dolist-temp--30603)) (when (and (string-match emacs-lisp-file-regexp file-in-dir) (not (or (auto-save-file-name-p file-in-dir) (backup-file-name-p file-in-dir) (equal (file-name-nondirectory file-in-dir) "test-harness.el")))) (or (batch-test-emacs-1 file-in-dir) (setq error t))) (setq --dolist-temp--30603 (cdr --dolist-temp--30603))) nil)))
(block nil (let ((--dolist-temp--30603 (directory-files file t)) file-in-dir) (while --dolist-temp--30603 (setq file-in-dir (car --dolist-temp--30603)) (when (and (string-match emacs-lisp-file-regexp file-in-dir) (not (or (auto-save-file-name-p file-in-dir) (backup-file-name-p file-in-dir) (equal (file-name-nondirectory file-in-dir) "test-harness.el")))) (or (batch-test-emacs-1 file-in-dir) (setq error t))) (setq --dolist-temp--30603 (cdr --dolist-temp--30603))) nil))
(dolist (file-in-dir (directory-files file t)) (when (and (string-match emacs-lisp-file-regexp file-in-dir) (not (or (auto-save-file-name-p file-in-dir) (backup-file-name-p file-in-dir) (equal (file-name-nondirectory file-in-dir) "test-harness.el")))) (or (batch-test-emacs-1 file-in-dir) (setq error t))))
(if (file-directory-p file) (dolist (file-in-dir (directory-files file t)) (when (and (string-match emacs-lisp-file-regexp file-in-dir) (not (or (auto-save-file-name-p file-in-dir) (backup-file-name-p file-in-dir) (equal (file-name-nondirectory file-in-dir) "test-harness.el")))) (or (batch-test-emacs-1 file-in-dir) (setq error t)))) (or (batch-test-emacs-1 file) (setq error t)))
(while --dolist-temp--30602 (setq file (car --dolist-temp--30602)) (if (file-directory-p file) (dolist (file-in-dir (directory-files file t)) (when (and (string-match emacs-lisp-file-regexp file-in-dir) (not (or (auto-save-file-name-p file-in-dir) (backup-file-name-p file-in-dir) (equal (file-name-nondirectory file-in-dir) "test-harness.el")))) (or (batch-test-emacs-1 file-in-dir) (setq error t)))) (or (batch-test-emacs-1 file) (setq error t))) (setq --dolist-temp--30602 (cdr --dolist-temp--30602)))
(let ((--dolist-temp--30602 command-line-args-left) file) (while --dolist-temp--30602 (setq file (car --dolist-temp--30602)) (if (file-directory-p file) (dolist (file-in-dir (directory-files file t)) (when (and (string-match emacs-lisp-file-regexp file-in-dir) (not (or (auto-save-file-name-p file-in-dir) (backup-file-name-p file-in-dir) (equal (file-name-nondirectory file-in-dir) "test-harness.el")))) (or (batch-test-emacs-1 file-in-dir) (setq error t)))) (or (batch-test-emacs-1 file) (setq error t))) (setq --dolist-temp--30602 (cdr --dolist-temp--30602))) nil)
(catch (quote --cl-block-nil--) (let ((--dolist-temp--30602 command-line-args-left) file) (while --dolist-temp--30602 (setq file (car --dolist-temp--30602)) (if (file-directory-p file) (dolist (file-in-dir (directory-files file t)) (when (and (string-match emacs-lisp-file-regexp file-in-dir) (not (or (auto-save-file-name-p file-in-dir) (backup-file-name-p file-in-dir) (equal (file-name-nondirectory file-in-dir) "test-harness.el")))) (or (batch-test-emacs-1 file-in-dir) (setq error t)))) (or (batch-test-emacs-1 file) (setq error t))) (setq --dolist-temp--30602 (cdr --dolist-temp--30602))) nil))
(cl-block-wrapper (catch (quote --cl-block-nil--) (let ((--dolist-temp--30602 command-line-args-left) file) (while --dolist-temp--30602 (setq file (car --dolist-temp--30602)) (if (file-directory-p file) (dolist (file-in-dir (directory-files file t)) (when (and (string-match emacs-lisp-file-regexp file-in-dir) (not (or (auto-save-file-name-p file-in-dir) (backup-file-name-p file-in-dir) (equal (file-name-nondirectory file-in-dir) "test-harness.el")))) (or (batch-test-emacs-1 file-in-dir) (setq error t)))) (or (batch-test-emacs-1 file) (setq error t))) (setq --dolist-temp--30602 (cdr --dolist-temp--30602))) nil)))
(block nil (let ((--dolist-temp--30602 command-line-args-left) file) (while --dolist-temp--30602 (setq file (car --dolist-temp--30602)) (if (file-directory-p file) (dolist (file-in-dir (directory-files file t)) (when (and (string-match emacs-lisp-file-regexp file-in-dir) (not (or (auto-save-file-name-p file-in-dir) (backup-file-name-p file-in-dir) (equal (file-name-nondirectory file-in-dir) "test-harness.el")))) (or (batch-test-emacs-1 file-in-dir) (setq error t)))) (or (batch-test-emacs-1 file) (setq error t))) (setq --dolist-temp--30602 (cdr --dolist-temp--30602))) nil))
(dolist (file command-line-args-left) (if (file-directory-p file) (dolist (file-in-dir (directory-files file t)) (when (and (string-match emacs-lisp-file-regexp file-in-dir) (not (or (auto-save-file-name-p file-in-dir) (backup-file-name-p file-in-dir) (equal (file-name-nondirectory file-in-dir) "test-harness.el")))) (or (batch-test-emacs-1 file-in-dir) (setq error t)))) (or (batch-test-emacs-1 file) (setq error t))))
# bind (error)
(let ((error nil)) (dolist (file command-line-args-left) (if (file-directory-p file) (dolist (file-in-dir (directory-files file t)) (when (and (string-match emacs-lisp-file-regexp file-in-dir) (not (or (auto-save-file-name-p file-in-dir) (backup-file-name-p file-in-dir) (equal (file-name-nondirectory file-in-dir) "test-harness.el")))) (or (batch-test-emacs-1 file-in-dir) (setq error t)))) (or (batch-test-emacs-1 file) (setq error t)))) (let ((namelen 0) (succlen 0) (testlen 0) (results test-harness-file-results-alist)) (flet ((print-width (i) (let ((x 10) (y 1)) (while (>= i x) (setq x (* 10 x) y (1+ y))) y))) (while results (let* ((head (car results)) (nn (length (file-name-nondirectory (first head)))) (ss (print-width (second head))) (tt (print-width (third head)))) (when (> nn namelen) (setq namelen nn)) (when (> ss succlen) (setq succlen ss)) (when (> tt testlen) (setq testlen tt))) (setq results (cdr results)))) (let ((results (reverse test-harness-file-results-alist)!
)) (while results (let* ((head (car results)) (basename (file-name-nondirectory (first head))) (nsucc (second head)) (ntest (third head))) (if (> ntest 0) (message test-harness-file-summary-template (concat basename ":") nsucc ntest (/ (* 100 nsucc) ntest)) (message test-harness-null-summary-template (concat basename ":"))) (setq results (cdr results))))) (when (> unexpected-test-suite-failures 0) (message "\n***** There %s %d unexpected test suite %s in %s:" (if (= unexpected-test-suite-failures 1) "was" "were") unexpected-test-suite-failures (if (= unexpected-test-suite-failures 1) "failure" "failures") (if (= (length unexpected-test-suite-failure-files) 1) "file" "files")) (while unexpected-test-suite-failure-files (let ((line (pop unexpected-test-suite-failure-files))) (while (and (< (length line) 61) unexpected-test-suite-failure-files) (setq line (concat line " " (pop unexpected-test-suite-failure-files)))) (message line))))) (message "\nDone") (kill-emacs (if error 1!
0)))
# bind (error-data)
# (condition-case ... . error)
> Contents of c:\Hacking\cvs.xemacs.org\XEmacs\xemacs-21.5-clean\nt\xemacs-21.5-clean-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-+\|^[A-Z] [^ ]+$\|^Wrong number of arguments:\|^ \*\* "
> and then deleting lines matching
> "confl.*with.*auto-inlining\|^Formatting:"
cd c:\Hacking\cvs.xemacs.org\XEmacs\xemacs-21.5-clean\nt\
nmake /f xemacs.mak check
Compilation started at Wed Dec 05 08:56:18 2007 +0100 (W. Europe Standard Time)
base64-tests.el: 1234 of 1234 tests successful (100%).
0 errors that should have been generated, but weren't
0 wrong-error failures
byte-compiler-tests.el: 104 of 104 tests successful (100%).
0 errors that should have been generated, but weren't
0 wrong-error failures
Fatal error: assertion failed, file c:\Hacking\cvs.xemacs.org\XEmacs\xemacs-21.5-clean\src\tests.c, line 141, (len) == sizeof (ext_latin12) - 1
Fatal error.
# (condition-case ... . ((cl-assertion-failed (Print-Failure (if nil "Assertion failed: %S; failing case = %S" "Assertion failed: %S") (quote (eq (quote PASS) (funcall fun))) nil) (incf assertion-failures)) (t (Print-Failure (if nil "%S ==> error: %S; failing case = %S" "%S ==> error: %S") (quote (eq (quote PASS) (funcall fun))) error-info nil) (incf other-failures))))
(condition-case error-info (progn (assert (eq (quote PASS) (funcall fun))) (Print-Pass "%S" (quote (eq (quote PASS) (funcall fun)))) (incf passes)) (cl-assertion-failed (Print-Failure (if nil "Assertion failed: %S; failing case = %S" "Assertion failed: %S") (quote (eq (quote PASS) (funcall fun))) nil) (incf assertion-failures)) (t (Print-Failure (if nil "%S ==> error: %S; failing case = %S" "%S ==> error: %S") (quote (eq (quote PASS) (funcall fun))) error-info nil) (incf other-failures)))
(lambda nil (defvar passes) (defvar assertion-failures) (defvar no-error-failures) (defvar wrong-error-failures) (defvar missing-message-failures) (defvar other-failures) (defvar trick-optimizer) (eval-when-compile (condition-case nil (require (quote test-harness)) (file-error (push "." load-path) (when (and (boundp (quote load-file-name)) (stringp load-file-name)) (push (file-name-directory load-file-name) load-path)) (require (quote test-harness))))) (when (boundp (quote test-function-list)) (loop for fun in test-function-list do (Assert (eq (quote PASS) (funcall fun))))))()
funcall((lambda nil (defvar passes) (defvar assertion-failures) (defvar no-error-failures) (defvar wrong-error-failures) (defvar missing-message-failures) (defvar other-failures) (defvar trick-optimizer) (eval-when-compile (condition-case nil (require (quote test-harness)) (file-error (push "." load-path) (when (and (boundp (quote load-file-name)) (stringp load-file-name)) (push (file-name-directory load-file-name) load-path)) (require (quote test-harness))))) (when (boundp (quote test-function-list)) (loop for fun in test-function-list do (Assert (eq (quote PASS) (funcall fun)))))))
# (condition-case ... . ((error (incf unexpected-test-file-failures) (princ (format "Unexpected error %S while executing interpreted code\n" error-info)) (message "Unexpected error %S while executing interpreted code." error-info) (message "Test suite execution aborted." error-info))))
(condition-case error-info (funcall (test-harness-read-from-buffer inbuffer)) (error (incf unexpected-test-file-failures) (princ (format "Unexpected error %S while executing interpreted code\n" error-info)) (message "Unexpected error %S while executing interpreted code." error-info) (message "Test suite execution aborted." error-info)))
(with-output-to-temp-buffer "*Test-Log*" (princ (format "Testing %s...\n\n" filename)) (defconst test-harness-failure-tag "FAIL") (defconst test-harness-success-tag "PASS") (defmacro Known-Bug-Expect-Failure (&rest body) (backquote (let ((test-harness-failure-tag "KNOWN BUG") (test-harness-success-tag "PASS (FAILURE EXPECTED)")) (\,@ body)))) (defmacro Implementation-Incomplete-Expect-Failure (&rest body) (backquote (let ((test-harness-failure-tag "IMPLEMENTATION INCOMPLETE") (test-harness-success-tag "PASS (FAILURE EXPECTED)")) (\,@ body)))) (defun Print-Failure (fmt &rest args) (setq fmt (format "%s: %s" test-harness-failure-tag fmt)) (if (noninteractive) (apply (function message) fmt args)) (princ (concat (apply (function format) fmt args) "\n"))) (defun Print-Pass (fmt &rest args) (setq fmt (format "%s: %s" test-harness-success-tag fmt)) (and test-harness-verbose (princ (concat (apply (function format) fmt args) "\n")))) (defun Print-Skip (test reason &optional fmt &re!
st args) (setq fmt (concat "SKIP: %S BECAUSE %S" fmt)) (princ (concat (apply (function format) fmt test reason args) "\n"))) (defmacro Skip-Test-Unless (condition reason description &rest body) "Unless CONDITION is satisfied, skip test BODY.\nREASON is a description of the condition failure, and must be unique (it\nis used as a hash key). DESCRIPTION describes the tests that were skipped.\nBODY is a sequence of expressions and may contain several tests." (backquote (if (not (\, condition)) (let ((count (gethash (\, reason) skipped-test-reasons))) (puthash (\, reason) (if (null count) 1 (1+ count)) skipped-test-reasons) (Print-Skip (\, description) (\, reason))) (\,@ body)))) (defmacro Assert (assertion &optional failing-case) (backquote (condition-case error-info (progn (assert (\, assertion)) (Print-Pass "%S" (quote (\, assertion))) (incf passes)) (cl-assertion-failed (Print-Failure (if (\, failing-case) "Assertion failed: %S; failing case = %S" "Assertion failed: %S") (q!
uote (\, assertion)) (\, failing-case)) (incf assertion-failur!
es)) (t
(Print-Failure (if (\, failing-case) "%S ==> error: %S; failing case = %S" "%S ==> error: %S") (quote (\, assertion)) error-info (\, failing-case)) (incf other-failures))))) (defmacro Check-Error (expected-error &rest body) (let ((quoted-body (if (= 1 (length body)) (backquote (quote (\, (car body)))) (backquote (quote (progn (\,@ body))))))) (backquote (condition-case error-info (progn (setq trick-optimizer (progn (\,@ body))) (Print-Failure "%S executed successfully, but expected error %S" (\, quoted-body) (quote (\, expected-error))) (incf no-error-failures)) ((\, expected-error) (Print-Pass "%S ==> error %S, as expected" (\, quoted-body) (quote (\, expected-error))) (incf passes)) (error (Print-Failure "%S ==> expected error %S, got error %S instead" (\, quoted-body) (quote (\, expected-error)) error-info) (incf wrong-error-failures)))))) (defmacro Check-Error-Message (expected-error expected-error-regexp &rest body) (let ((quoted-body (if (= 1 (length body)) (backquote!
(quote (\, (car body)))) (backquote (quote (progn (\,@ body))))))) (backquote (condition-case error-info (progn (setq trick-optimizer (progn (\,@ body))) (Print-Failure "%S executed successfully, but expected error %S" (\, quoted-body) (quote (\, expected-error))) (incf no-error-failures)) ((\, expected-error) (let ((error-message (second error-info))) (if (string-match (\, expected-error-regexp) error-message) (progn (Print-Pass "%S ==> error %S %S, as expected" (\, quoted-body) error-message (quote (\, expected-error))) (incf passes)) (Print-Failure "%S ==> got error %S as expected, but error message %S did not match regexp %S" (\, quoted-body) (quote (\, expected-error)) error-message (\, expected-error-regexp)) (incf wrong-error-failures)))) (error (Print-Failure "%S ==> expected error %S, got error %S instead" (\, quoted-body) (quote (\, expected-error)) error-info) (incf wrong-error-failures)))))) (defmacro Check-Message (expected-message-regexp &rest body) (Skip-Tes!
t-Unless (fboundp (quote defadvice)) "can't defadvice" expecte!
d-messag
e-regexp (let ((quoted-body (if (= 1 (length body)) (backquote (quote (\, (car body)))) (backquote (quote (progn (\,@ body))))))) (backquote (let ((messages "")) (defadvice message (around collect activate) (defvar messages) (let ((msg-string (apply (quote format) (ad-get-args 0)))) (setq messages (concat messages msg-string)) msg-string)) (condition-case error-info (progn (setq trick-optimizer (progn (\,@ body))) (if (string-match (\, expected-message-regexp) messages) (progn (Print-Pass "%S ==> value %S, message %S, matching %S, as expected" (\, quoted-body) trick-optimizer messages (quote (\, expected-message-regexp))) (incf passes)) (Print-Failure "%S ==> value %S, message %S, NOT matching expected %S" (\, quoted-body) trick-optimizer messages (quote (\, expected-message-regexp))) (incf missing-message-failures))) (error (Print-Failure "%S ==> unexpected error %S" (\, quoted-body) error-info) (incf other-failures))) (ad-unadvise (quote message))))))) (defmacro Silence-Me!
ssage (&rest body) (backquote (flet ((append-message (&rest args) nil)) (\,@ body)))) (defmacro Ignore-Ebola (&rest body) (backquote (let ((debug-issue-ebola-notices -42)) (\,@ body)))) (defun Int-to-Marker (pos) (save-excursion (set-buffer standard-output) (save-excursion (goto-char pos) (point-marker)))) (princ "Testing Interpreted Lisp\n\n") (condition-case error-info (funcall (test-harness-read-from-buffer inbuffer)) (error (incf unexpected-test-file-failures) (princ (format "Unexpected error %S while executing interpreted code\n" error-info)) (message "Unexpected error %S while executing interpreted code." error-info) (message "Test suite execution aborted." error-info))) (princ "\nTesting Compiled Lisp\n\n") (let (code (test-harness-test-compiled t)) (condition-case error-info (setq code (letf (((symbol-function (quote byte-compile-warn)) (quote ignore))) (byte-compile (test-harness-read-from-buffer inbuffer)))) (error (princ (format "Unexpected error %S while byte-co!
mpiling code\n" error-info)))) (condition-case error-info (if !
code (fu
ncall code)) (error (incf unexpected-test-file-failures) (princ (format "Unexpected error %S while executing byte-compiled code\n" error-info)) (message "Unexpected error %S while executing byte-compiled code." error-info) (message "Test suite execution aborted." error-info)))) (princ (format "\nSUMMARY for %s:\n" filename)) (princ (format " %5d passes\n" passes)) (princ (format " %5d assertion failures\n" assertion-failures)) (princ (format " %5d errors that should have been generated, but weren't\n" no-error-failures)) (princ (format " %5d wrong-error failures\n" wrong-error-failures)) (princ (format " %5d missing-message failures\n" missing-message-failures)) (princ (format " %5d other failures\n" other-failures)) (let* ((total (+ passes assertion-failures no-error-failures wrong-error-failures missing-message-failures other-failures)) (basename (file-name-nondirectory filename)) (summary-msg (if (> total 0) (format test-harness-file-summary-template (concat basename ":")!
passes total (/ (* 100 passes) total)) (format test-harness-null-summary-template (concat basename ":")))) (reasons "")) (maphash (lambda (key value) (setq reasons (concat reasons (format "\n %d tests skipped because %s." value key)))) skipped-test-reasons) (when (> (length reasons) 1) (setq summary-msg (concat summary-msg reasons "\n Probably XEmacs cannot find your installed packages. Set EMACSPACKAGEPATH\n to the package hierarchy root or configure with --package-path to enable\n the skipped tests."))) (setq test-harness-file-results-alist (cons (list filename passes total) test-harness-file-results-alist)) (message "%s" summary-msg)) (when (> unexpected-test-file-failures 0) (setq unexpected-test-suite-failure-files (cons filename unexpected-test-suite-failure-files)) (setq unexpected-test-suite-failures (+ unexpected-test-suite-failures unexpected-test-file-failures)) (message "Test suite execution failed unexpectedly.")) (fmakunbound (quote Assert)) (fma!
kunbound (quote Check-Error)) (fmakunbound (quote Check-Messag!
e)) (fma
kunbound (quote Check-Error-Message)) (fmakunbound (quote Ignore-Ebola)) (fmakunbound (quote Int-to-Marker)) (and noninteractive (message "%s" (buffer-substring-no-properties nil nil "*Test-Log*"))))
# bind (pass-stream debug-on-error trick-optimizer skipped-test-reasons unexpected-test-file-failures other-failures missing-message-failures wrong-error-failures no-error-failures assertion-failures passes)
(let ((passes 0) (assertion-failures 0) (no-error-failures 0) (wrong-error-failures 0) (missing-message-failures 0) (other-failures 0) (unexpected-test-file-failures 0) (skipped-test-reasons (make-hash-table :test (quote equal))) (trick-optimizer nil) (debug-on-error t) (pass-stream nil)) (with-output-to-temp-buffer "*Test-Log*" (princ (format "Testing %s...\n\n" filename)) (defconst test-harness-failure-tag "FAIL") (defconst test-harness-success-tag "PASS") (defmacro Known-Bug-Expect-Failure (&rest body) (backquote (let ((test-harness-failure-tag "KNOWN BUG") (test-harness-success-tag "PASS (FAILURE EXPECTED)")) (\,@ body)))) (defmacro Implementation-Incomplete-Expect-Failure (&rest body) (backquote (let ((test-harness-failure-tag "IMPLEMENTATION INCOMPLETE") (test-harness-success-tag "PASS (FAILURE EXPECTED)")) (\,@ body)))) (defun Print-Failure (fmt &rest args) (setq fmt (format "%s: %s" test-harness-failure-tag fmt)) (if (noninteractive) (apply (function message) fmt a!
rgs)) (princ (concat (apply (function format) fmt args) "\n"))) (defun Print-Pass (fmt &rest args) (setq fmt (format "%s: %s" test-harness-success-tag fmt)) (and test-harness-verbose (princ (concat (apply (function format) fmt args) "\n")))) (defun Print-Skip (test reason &optional fmt &rest args) (setq fmt (concat "SKIP: %S BECAUSE %S" fmt)) (princ (concat (apply (function format) fmt test reason args) "\n"))) (defmacro Skip-Test-Unless (condition reason description &rest body) "Unless CONDITION is satisfied, skip test BODY.\nREASON is a description of the condition failure, and must be unique (it\nis used as a hash key). DESCRIPTION describes the tests that were skipped.\nBODY is a sequence of expressions and may contain several tests." (backquote (if (not (\, condition)) (let ((count (gethash (\, reason) skipped-test-reasons))) (puthash (\, reason) (if (null count) 1 (1+ count)) skipped-test-reasons) (Print-Skip (\, description) (\, reason))) (\,@ body)))) (defmacro Ass!
ert (assertion &optional failing-case) (backquote (condition-c!
ase erro
r-info (progn (assert (\, assertion)) (Print-Pass "%S" (quote (\, assertion))) (incf passes)) (cl-assertion-failed (Print-Failure (if (\, failing-case) "Assertion failed: %S; failing case = %S" "Assertion failed: %S") (quote (\, assertion)) (\, failing-case)) (incf assertion-failures)) (t (Print-Failure (if (\, failing-case) "%S ==> error: %S; failing case = %S" "%S ==> error: %S") (quote (\, assertion)) error-info (\, failing-case)) (incf other-failures))))) (defmacro Check-Error (expected-error &rest body) (let ((quoted-body (if (= 1 (length body)) (backquote (quote (\, (car body)))) (backquote (quote (progn (\,@ body))))))) (backquote (condition-case error-info (progn (setq trick-optimizer (progn (\,@ body))) (Print-Failure "%S executed successfully, but expected error %S" (\, quoted-body) (quote (\, expected-error))) (incf no-error-failures)) ((\, expected-error) (Print-Pass "%S ==> error %S, as expected" (\, quoted-body) (quote (\, expected-error))) (incf passes)) (err!
or (Print-Failure "%S ==> expected error %S, got error %S instead" (\, quoted-body) (quote (\, expected-error)) error-info) (incf wrong-error-failures)))))) (defmacro Check-Error-Message (expected-error expected-error-regexp &rest body) (let ((quoted-body (if (= 1 (length body)) (backquote (quote (\, (car body)))) (backquote (quote (progn (\,@ body))))))) (backquote (condition-case error-info (progn (setq trick-optimizer (progn (\,@ body))) (Print-Failure "%S executed successfully, but expected error %S" (\, quoted-body) (quote (\, expected-error))) (incf no-error-failures)) ((\, expected-error) (let ((error-message (second error-info))) (if (string-match (\, expected-error-regexp) error-message) (progn (Print-Pass "%S ==> error %S %S, as expected" (\, quoted-body) error-message (quote (\, expected-error))) (incf passes)) (Print-Failure "%S ==> got error %S as expected, but error message %S did not match regexp %S" (\, quoted-body) (quote (\, expected-error)) error-message !
(\, expected-error-regexp)) (incf wrong-error-failures)))) (er!
ror (Pri
nt-Failure "%S ==> expected error %S, got error %S instead" (\, quoted-body) (quote (\, expected-error)) error-info) (incf wrong-error-failures)))))) (defmacro Check-Message (expected-message-regexp &rest body) (Skip-Test-Unless (fboundp (quote defadvice)) "can't defadvice" expected-message-regexp (let ((quoted-body (if (= 1 (length body)) (backquote (quote (\, (car body)))) (backquote (quote (progn (\,@ body))))))) (backquote (let ((messages "")) (defadvice message (around collect activate) (defvar messages) (let ((msg-string (apply (quote format) (ad-get-args 0)))) (setq messages (concat messages msg-string)) msg-string)) (condition-case error-info (progn (setq trick-optimizer (progn (\,@ body))) (if (string-match (\, expected-message-regexp) messages) (progn (Print-Pass "%S ==> value %S, message %S, matching %S, as expected" (\, quoted-body) trick-optimizer messages (quote (\, expected-message-regexp))) (incf passes)) (Print-Failure "%S ==> value %S, message %S, NOT match!
ing expected %S" (\, quoted-body) trick-optimizer messages (quote (\, expected-message-regexp))) (incf missing-message-failures))) (error (Print-Failure "%S ==> unexpected error %S" (\, quoted-body) error-info) (incf other-failures))) (ad-unadvise (quote message))))))) (defmacro Silence-Message (&rest body) (backquote (flet ((append-message (&rest args) nil)) (\,@ body)))) (defmacro Ignore-Ebola (&rest body) (backquote (let ((debug-issue-ebola-notices -42)) (\,@ body)))) (defun Int-to-Marker (pos) (save-excursion (set-buffer standard-output) (save-excursion (goto-char pos) (point-marker)))) (princ "Testing Interpreted Lisp\n\n") (condition-case error-info (funcall (test-harness-read-from-buffer inbuffer)) (error (incf unexpected-test-file-failures) (princ (format "Unexpected error %S while executing interpreted code\n" error-info)) (message "Unexpected error %S while executing interpreted code." error-info) (message "Test suite execution aborted." error-info))) (princ "\nTe!
sting Compiled Lisp\n\n") (let (code (test-harness-test-compil!
ed t)) (
condition-case error-info (setq code (letf (((symbol-function (quote byte-compile-warn)) (quote ignore))) (byte-compile (test-harness-read-from-buffer inbuffer)))) (error (princ (format "Unexpected error %S while byte-compiling code\n" error-info)))) (condition-case error-info (if code (funcall code)) (error (incf unexpected-test-file-failures) (princ (format "Unexpected error %S while executing byte-compiled code\n" error-info)) (message "Unexpected error %S while executing byte-compiled code." error-info) (message "Test suite execution aborted." error-info)))) (princ (format "\nSUMMARY for %s:\n" filename)) (princ (format " %5d passes\n" passes)) (princ (format " %5d assertion failures\n" assertion-failures)) (princ (format " %5d errors that should have been generated, but weren't\n" no-error-failures)) (princ (format " %5d wrong-error failures\n" wrong-error-failures)) (princ (format " %5d missing-message failures\n" missing-message-failures)) (princ (format " %5d other f!
ailures\n" other-failures)) (let* ((total (+ passes assertion-failures no-error-failures wrong-error-failures missing-message-failures other-failures)) (basename (file-name-nondirectory filename)) (summary-msg (if (> total 0) (format test-harness-file-summary-template (concat basename ":") passes total (/ (* 100 passes) total)) (format test-harness-null-summary-template (concat basename ":")))) (reasons "")) (maphash (lambda (key value) (setq reasons (concat reasons (format "\n %d tests skipped because %s." value key)))) skipped-test-reasons) (when (> (length reasons) 1) (setq summary-msg (concat summary-msg reasons "\n Probably XEmacs cannot find your installed packages. Set EMACSPACKAGEPATH\n to the package hierarchy root or configure with --package-path to enable\n the skipped tests."))) (setq test-harness-file-results-alist (cons (list filename passes total) test-harness-file-results-alist)) (message "%s" summary-msg)) (when (> unexpected-test-file-failures!
0) (setq unexpected-test-suite-failure-files (cons filename u!
nexpecte
d-test-suite-failure-files)) (setq unexpected-test-suite-failures (+ unexpected-test-suite-failures unexpected-test-file-failures)) (message "Test suite execution failed unexpectedly.")) (fmakunbound (quote Assert)) (fmakunbound (quote Check-Error)) (fmakunbound (quote Check-Message)) (fmakunbound (quote Check-Error-Message)) (fmakunbound (quote Ignore-Ebola)) (fmakunbound (quote Int-to-Marker)) (and noninteractive (message "%s" (buffer-substring-no-properties nil nil "*Test-Log*")))))
# (condition-case ... . ((error (princ ">>Error occurred processing ") (princ file) (princ ": ") (display-error error-info nil) (terpri) nil)))
(condition-case error-info (progn (test-emacs-test-file file) t) (error (princ ">>Error occurred processing ") (princ file) (princ ": ") (display-error error-info nil) (terpri) nil))
(or (batch-test-emacs-1 file-in-dir) (setq error t))
(if (and (string-match emacs-lisp-file-regexp file-in-dir) (not (or (auto-save-file-name-p file-in-dir) (backup-file-name-p file-in-dir) (equal (file-name-nondirectory file-in-dir) "test-harness.el")))) (or (batch-test-emacs-1 file-in-dir) (setq error t)))
(when (and (string-match emacs-lisp-file-regexp file-in-dir) (not (or (auto-save-file-name-p file-in-dir) (backup-file-name-p file-in-dir) (equal (file-name-nondirectory file-in-dir) "test-harness.el")))) (or (batch-test-emacs-1 file-in-dir) (setq error t)))
(while --dolist-temp--91803 (setq file-in-dir (car --dolist-temp--91803)) (when (and (string-match emacs-lisp-file-regexp file-in-dir) (not (or (auto-save-file-name-p file-in-dir) (backup-file-name-p file-in-dir) (equal (file-name-nondirectory file-in-dir) "test-harness.el")))) (or (batch-test-emacs-1 file-in-dir) (setq error t))) (setq --dolist-temp--91803 (cdr --dolist-temp--91803)))
(let ((--dolist-temp--91803 (directory-files file t)) file-in-dir) (while --dolist-temp--91803 (setq file-in-dir (car --dolist-temp--91803)) (when (and (string-match emacs-lisp-file-regexp file-in-dir) (not (or (auto-save-file-name-p file-in-dir) (backup-file-name-p file-in-dir) (equal (file-name-nondirectory file-in-dir) "test-harness.el")))) (or (batch-test-emacs-1 file-in-dir) (setq error t))) (setq --dolist-temp--91803 (cdr --dolist-temp--91803))) nil)
(catch (quote --cl-block-nil--) (let ((--dolist-temp--91803 (directory-files file t)) file-in-dir) (while --dolist-temp--91803 (setq file-in-dir (car --dolist-temp--91803)) (when (and (string-match emacs-lisp-file-regexp file-in-dir) (not (or (auto-save-file-name-p file-in-dir) (backup-file-name-p file-in-dir) (equal (file-name-nondirectory file-in-dir) "test-harness.el")))) (or (batch-test-emacs-1 file-in-dir) (setq error t))) (setq --dolist-temp--91803 (cdr --dolist-temp--91803))) nil))
(cl-block-wrapper (catch (quote --cl-block-nil--) (let ((--dolist-temp--91803 (directory-files file t)) file-in-dir) (while --dolist-temp--91803 (setq file-in-dir (car --dolist-temp--91803)) (when (and (string-match emacs-lisp-file-regexp file-in-dir) (not (or (auto-save-file-name-p file-in-dir) (backup-file-name-p file-in-dir) (equal (file-name-nondirectory file-in-dir) "test-harness.el")))) (or (batch-test-emacs-1 file-in-dir) (setq error t))) (setq --dolist-temp--91803 (cdr --dolist-temp--91803))) nil)))
(block nil (let ((--dolist-temp--91803 (directory-files file t)) file-in-dir) (while --dolist-temp--91803 (setq file-in-dir (car --dolist-temp--91803)) (when (and (string-match emacs-lisp-file-regexp file-in-dir) (not (or (auto-save-file-name-p file-in-dir) (backup-file-name-p file-in-dir) (equal (file-name-nondirectory file-in-dir) "test-harness.el")))) (or (batch-test-emacs-1 file-in-dir) (setq error t))) (setq --dolist-temp--91803 (cdr --dolist-temp--91803))) nil))
(dolist (file-in-dir (directory-files file t)) (when (and (string-match emacs-lisp-file-regexp file-in-dir) (not (or (auto-save-file-name-p file-in-dir) (backup-file-name-p file-in-dir) (equal (file-name-nondirectory file-in-dir) "test-harness.el")))) (or (batch-test-emacs-1 file-in-dir) (setq error t))))
(if (file-directory-p file) (dolist (file-in-dir (directory-files file t)) (when (and (string-match emacs-lisp-file-regexp file-in-dir) (not (or (auto-save-file-name-p file-in-dir) (backup-file-name-p file-in-dir) (equal (file-name-nondirectory file-in-dir) "test-harness.el")))) (or (batch-test-emacs-1 file-in-dir) (setq error t)))) (or (batch-test-emacs-1 file) (setq error t)))
(while --dolist-temp--91802 (setq file (car --dolist-temp--91802)) (if (file-directory-p file) (dolist (file-in-dir (directory-files file t)) (when (and (string-match emacs-lisp-file-regexp file-in-dir) (not (or (auto-save-file-name-p file-in-dir) (backup-file-name-p file-in-dir) (equal (file-name-nondirectory file-in-dir) "test-harness.el")))) (or (batch-test-emacs-1 file-in-dir) (setq error t)))) (or (batch-test-emacs-1 file) (setq error t))) (setq --dolist-temp--91802 (cdr --dolist-temp--91802)))
(let ((--dolist-temp--91802 command-line-args-left) file) (while --dolist-temp--91802 (setq file (car --dolist-temp--91802)) (if (file-directory-p file) (dolist (file-in-dir (directory-files file t)) (when (and (string-match emacs-lisp-file-regexp file-in-dir) (not (or (auto-save-file-name-p file-in-dir) (backup-file-name-p file-in-dir) (equal (file-name-nondirectory file-in-dir) "test-harness.el")))) (or (batch-test-emacs-1 file-in-dir) (setq error t)))) (or (batch-test-emacs-1 file) (setq error t))) (setq --dolist-temp--91802 (cdr --dolist-temp--91802))) nil)
(catch (quote --cl-block-nil--) (let ((--dolist-temp--91802 command-line-args-left) file) (while --dolist-temp--91802 (setq file (car --dolist-temp--91802)) (if (file-directory-p file) (dolist (file-in-dir (directory-files file t)) (when (and (string-match emacs-lisp-file-regexp file-in-dir) (not (or (auto-save-file-name-p file-in-dir) (backup-file-name-p file-in-dir) (equal (file-name-nondirectory file-in-dir) "test-harness.el")))) (or (batch-test-emacs-1 file-in-dir) (setq error t)))) (or (batch-test-emacs-1 file) (setq error t))) (setq --dolist-temp--91802 (cdr --dolist-temp--91802))) nil))
(cl-block-wrapper (catch (quote --cl-block-nil--) (let ((--dolist-temp--91802 command-line-args-left) file) (while --dolist-temp--91802 (setq file (car --dolist-temp--91802)) (if (file-directory-p file) (dolist (file-in-dir (directory-files file t)) (when (and (string-match emacs-lisp-file-regexp file-in-dir) (not (or (auto-save-file-name-p file-in-dir) (backup-file-name-p file-in-dir) (equal (file-name-nondirectory file-in-dir) "test-harness.el")))) (or (batch-test-emacs-1 file-in-dir) (setq error t)))) (or (batch-test-emacs-1 file) (setq error t))) (setq --dolist-temp--91802 (cdr --dolist-temp--91802))) nil)))
(block nil (let ((--dolist-temp--91802 command-line-args-left) file) (while --dolist-temp--91802 (setq file (car --dolist-temp--91802)) (if (file-directory-p file) (dolist (file-in-dir (directory-files file t)) (when (and (string-match emacs-lisp-file-regexp file-in-dir) (not (or (auto-save-file-name-p file-in-dir) (backup-file-name-p file-in-dir) (equal (file-name-nondirectory file-in-dir) "test-harness.el")))) (or (batch-test-emacs-1 file-in-dir) (setq error t)))) (or (batch-test-emacs-1 file) (setq error t))) (setq --dolist-temp--91802 (cdr --dolist-temp--91802))) nil))
(dolist (file command-line-args-left) (if (file-directory-p file) (dolist (file-in-dir (directory-files file t)) (when (and (string-match emacs-lisp-file-regexp file-in-dir) (not (or (auto-save-file-name-p file-in-dir) (backup-file-name-p file-in-dir) (equal (file-name-nondirectory file-in-dir) "test-harness.el")))) (or (batch-test-emacs-1 file-in-dir) (setq error t)))) (or (batch-test-emacs-1 file) (setq error t))))
# bind (error)
(let ((error nil)) (dolist (file command-line-args-left) (if (file-directory-p file) (dolist (file-in-dir (directory-files file t)) (when (and (string-match emacs-lisp-file-regexp file-in-dir) (not (or (auto-save-file-name-p file-in-dir) (backup-file-name-p file-in-dir) (equal (file-name-nondirectory file-in-dir) "test-harness.el")))) (or (batch-test-emacs-1 file-in-dir) (setq error t)))) (or (batch-test-emacs-1 file) (setq error t)))) (let ((namelen 0) (succlen 0) (testlen 0) (results test-harness-file-results-alist)) (flet ((print-width (i) (let ((x 10) (y 1)) (while (>= i x) (setq x (* 10 x) y (1+ y))) y))) (while results (let* ((head (car results)) (nn (length (file-name-nondirectory (first head)))) (ss (print-width (second head))) (tt (print-width (third head)))) (when (> nn namelen) (setq namelen nn)) (when (> ss succlen) (setq succlen ss)) (when (> tt testlen) (setq testlen tt))) (setq results (cdr results)))) (let ((results (reverse test-harness-file-results-alist)!
)) (while results (let* ((head (car results)) (basename (file-name-nondirectory (first head))) (nsucc (second head)) (ntest (third head))) (if (> ntest 0) (message test-harness-file-summary-template (concat basename ":") nsucc ntest (/ (* 100 nsucc) ntest)) (message test-harness-null-summary-template (concat basename ":"))) (setq results (cdr results))))) (when (> unexpected-test-suite-failures 0) (message "\n***** There %s %d unexpected test suite %s in %s:" (if (= unexpected-test-suite-failures 1) "was" "were") unexpected-test-suite-failures (if (= unexpected-test-suite-failures 1) "failure" "failures") (if (= (length unexpected-test-suite-failure-files) 1) "file" "files")) (while unexpected-test-suite-failure-files (let ((line (pop unexpected-test-suite-failure-files))) (while (and (< (length line) 61) unexpected-test-suite-failure-files) (setq line (concat line " " (pop unexpected-test-suite-failure-files)))) (message line))))) (message "\nDone") (kill-emacs (if error 1!
0)))
# bind (error-data)
# (condition-case ... . error)
Compilation finished at Wed Dec 05 08:57:42
--
Adrian Aichner
mailto:adrian@xemacs.org
http://www.xemacs.org/
_______________________________________________
XEmacs-Beta mailing list
XEmacs-Beta(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-beta
[COMMIT] Make compiled #'custom-declare-variable forms compatible with 21.4.
17 years
Aidan Kehoe
Ar an dara lá de mí na Nollaig, scríobh Vin Shelton:
> The bytecompiler is not my specialty, but I can say that the patch
> allows 21.5 to produce a set of packages that can be loaded in 21.4.
> In particular, the jka-compr problem is gone.
>
> I recommend you submit this patch to xemacs-patches and commit it.
Done. Thank you.
APPROVE COMMIT
NOTE: This patch has been committed.
lisp/ChangeLog addition:
2007-12-03 Aidan Kehoe <kehoea(a)parhasard.net>
* bytecomp.el (byte-compile-file-form-custom-declare-variable):
Instead of using a keyword argument that's incompatible with 21.4,
modify the byte compiled init code to change the variable's
standard-value property itself.
XEmacs Trunk source patch:
Diff command: cvs -q diff -Nu
Files affected: lisp/bytecomp.el
===================================================================
RCS
Index: lisp/bytecomp.el
===================================================================
RCS file: /pack/xemacscvs/XEmacs/xemacs/lisp/bytecomp.el,v
retrieving revision 1.22
diff -u -u -r1.22 bytecomp.el
--- lisp/bytecomp.el 2007/12/01 13:40:07 1.22
+++ lisp/bytecomp.el 2007/12/04 20:34:57
@@ -2405,10 +2405,17 @@
;; And save a value to be examined in the custom UI, if that differs
;; from the init value.
(unless (equal to-examine (car-safe (cdr (third form))))
- (setf (nthcdr 4 form) (nconc
- (list :default
- (list 'quote to-examine))
- (nthcdr 4 form)))))
+ (setcdr (third form)
+ (list (byte-compile-top-level
+ ;; This is ugly. custom-declare-variable errors if
+ ;; it's passed a keyword it doesn't know about, and
+ ;; so to make this code run on 21.4, we add code to
+ ;; modify the standard-value property to the
+ ;; byte-compiled value for DEFAULT.
+ `(prog2 (put ,(second form) 'standard-value
+ '(,to-examine))
+ ,to-examine)
+ nil 'file)))))
form))
;;;###autoload
--
¿Dónde estará ahora mi sobrino Yoghurtu Nghé, que tuvo que huir
precipitadamente de la aldea por culpa de la escasez de rinocerontes?
_______________________________________________
XEmacs-Beta mailing list
XEmacs-Beta(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-beta
Lost docstrings in 21.5
17 years
Stephen J. Turnbull
Aidan, looks like you touched this stuff last:
Finding pointers to doc strings...
Finding pointers to doc strings...done
Warning: doc lost for function unicode-error-translate-region.
Warning: doc lost for function frob-unicode-errors-region.
Warning: doc lost for function add-menu-item.
Warning: doc lost for function add-menu.
I don't see what the problem is, anybody know?
_______________________________________________
XEmacs-Beta mailing list
XEmacs-Beta(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-beta
Native windows gnuclient/winclient quandry
17 years
Vin Shelton
Greetings XEmacs, gnuclient and winclient hackers,
Recently, Adrian Aichner and I were having a discussion about running
gnuclient for a native windows package. The current native windows
kits do not include gnuserv/gnuclient-like functionality and I'd like
to remedy that situation.
Here are my thoughts:
1) The gnuserv code currently in the 21.4 and 21.5 branches does not
compile as-is on native windows.
2) I found Guy's gnuserv_beta package available from
http://www.wyrdrune.com/index.html?gnuserv.html. This version
requires fairly extensive changes to gnuclient and gnuserv, but I can
build it by hand and it seems to work OK with a native windows XEmacs.
I'm a little leery of checking in such substantial changes to the
code, because the tool currently works fine on other platforms.
3) winclient works great for file access (although I had to increase
the timeout if I want to use it to *start* XEmacs), but it does not
yet support execution of arbitrary lisp code, nor does it support
passing the starting line number in as an argument. I started to
implement these features (I added a new message for 'eval', but didn't
hook that up to the lisp evaluation engine) and then began to wonder
what the right approach is.
If you have an opinion on how to proceed, please share it with the list.
Thank you,
Vin
--
The Journey by Mary Oliver
http://www.poemhunter.com/p/m/poem.asp?poet=6771&poem=30506
_______________________________________________
XEmacs-Beta mailing list
XEmacs-Beta(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-beta
Re: 21.5 screen resize issue
17 years
Stephen J. Turnbull
Ron Isaacson writes:
> After a resize, I see TWO calls to change_frame_size with the correct
> dimensions, while delay == 1. Each of these sets the f->new_*
> variables, along with size_change_pending, then returns. Then there's
> a THIRD call, again with correct dimensions, when delay == 0; that
> sets size_change_pending to 0 and then we go through a full redisplay.
> redisplay_frame does:
>
> depth = enter_redisplay_critical_section ();
>
> and gets back a depth of 3. It proceeds all the way through the
> CRITICAL REDISPLAY SECTION, then when it's done, calls:
>
> exit_redisplay_critical_section (depth);
>
> Now, I confirmed that just before that call, f->size_change_pending is
> still 0. However, when exit_redisplay_critical_section does its
> unbind_to business, specpdl_depth_counter starts at 13; by the time it
> walks down to 3, f->size_change_pending has been reset to 1,
Hm. I wonder if it's not size_change_pending that has been reset to
1, but rather f has been reset to a frame where size_change_pending is
1! See the comment about size_change_pending in change_frame_size_1
at line 3437 of frame.c, but in change_frame_size we loop over all TTY
frames without resetting size_change_pending on frames != f at line 3460.
> but the two f->new_* variables are still 0.
And this may make sense because change_frame_size was called on that
frame from the loop in redisplay.c at line 6719.
I gotta get some sleep, but I think that moving the reset of
size_changed_pending to the beginning of change_frame_size_1 might help.
_______________________________________________
XEmacs-Beta mailing list
XEmacs-Beta(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-beta
Re: A couple of problems with new packages
17 years
Michael Sperber
"Vin Shelton" <acs(a)alumni.princeton.edu> writes:
> On Dec 3, 2007 2:04 AM, Michael Sperber <sperber(a)deinprogramm.de> wrote:
>>
>> "Vin Shelton" <acs(a)alumni.princeton.edu> writes:
>>
>> > That worked - thanks! Here's another one; I was opening 21.5's
>> > lisp/autoload.el file and got this backtrace:
>>
>> More of the same. Better now?
>
> Thanks for investigating. I think your latest changes to semantic
> broke cogre's build:
I push anywhere, it squirts out somewhere else. :-) This was a typo,
though. Better?
--
Cheers =8-} Mike
Friede, Völkerverständigung und überhaupt blabla
_______________________________________________
XEmacs-Beta mailing list
XEmacs-Beta(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-beta
A couple of problems with new packages
17 years
Vin Shelton
Mike -
I can now build the xemacs-packages with a 21.5 XEmacs. Thanks.
In using those packages, I notice the following problems:
(1) When I start up a 21.4 XEmacs -vanilla evaluating
(require 'jka-compr)
yields the following backtrace:
Debugger entered--Lisp error: (error "Unknown keyword" :default)
signal(error ("Unknown keyword" :default))
custom-handle-keyword(jka-compr-temp-name-template :default
(expand-file-name "jka-com" (temp-directory)) custom-variable)
custom-declare-variable(jka-compr-temp-name-template (byte-code "ÀÁÂ
\"" [expand-file-name "jka-com" temp-directory] 3) "Prefix added to
all temp files created by jka-compr.\nThere should be no more than
seven characters after the final `/'." :default (expand-file-name
"jka-com" (temp-directory)) :type string :group jka-compr)
load-internal("jka-compr" nil t nil binary)
load("jka-compr" nil t nil)
require(jka-compr)
eval((require (quote jka-compr)))
eval-interactive((require (quote jka-compr)))
eval-last-sexp(t)
#<compiled-function nil "...(13)" [standard-output terpri
eval-last-sexp t] 2 997397 nil>()
call-interactively(eval-print-last-sexp)
(2) When I start up a 21.5 XEmacs using those packages (without cedet
installed) and then evaluate
(info)
I get the following backtrace:
Debugger entered--Lisp error: (file-error "Cannot open load file" "ezimage")
signal(file-error ("Cannot open load file" "ezimage"))
load("ezimage" nil require nil)
require(ezimage)
load-internal("sb-image" nil require nil binary)
load("sb-image" nil require nil)
require(sb-image)
byte-code("..." [require assoc easymenu dframe sb-image
custom-declare-group speedbar nil "File and tag browser frame." :group
etags tools convenience speedbar-faces "Faces used in speedbar."
:prefix "speedbar-" faces speedbar-vc "Version control display in
speedbar."] 10)
load-internal("speedbar" nil require nil binary)
load("speedbar" nil require nil)
require(speedbar)
byte-code("..." [require speedbar info] 2)
load-internal("sb-info" nil require nil binary)
load("sb-info" nil require nil)
require(sb-info)
(progn (require (quote sb-info)))
load-internal("info" nil nil nil binary)
load("info" nil nil nil)
(info)
eval((info))
eval-interactive((info))
eval-last-sexp(t)
#<compiled-function nil "...(13)" [standard-output terpri
eval-last-sexp t] 2 1243051 nil>()
call-interactively(eval-print-last-sexp)
Please investigate.
Thank you,
Vin
_______________________________________________
XEmacs-Beta mailing list
XEmacs-Beta(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-beta
xemacs 21.4.19 mule -vanilla: no utf-8
17 years
Uwe Brauer
Hello
I started xemacs 21.4.19 mule -vanilla: but could not use utf-8. So I
had to load the following minimal lines:
(cond ((not (emacs-version>= 21 5))
;;
;; Code for XEmacs 21.4 or earlier
;;
(require 'un-define)
(set-coding-priority-list '(utf-8))
(set-coding-category-system 'utf-8 'utf-8)))
Could that behavior be changed, that is could utf-8 be included in
xemacs -vanilla?
thanks
Uwe Brauer
_______________________________________________
XEmacs-Beta mailing list
XEmacs-Beta(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-beta
Re: XEmacs CVS goes Mercurial
17 years
Mike Kupfer
>>>>> "MS" == Michael Sperber <sperber(a)deinprogramm.de> writes:
MS> XEmacs is switching its home for active development from CVS to
MS> Mercurial.
Cool.
MS> This only affects the core of XEmacs for the time being, and only
MS> the trunk of the CVS. Both the packages and 21.4 development will
MS> continue to live in CVS for the time being.
Any plans for moving the packages?
MS> To facilitate this process, every commit to "xemacs" will trigger an
MS> e-mail to be sent to xemacs-patches(a)xemacs.org, where it can be
MS> reviewed and discussed. These automatic e-mails replace the manual
MS> e-mails we have now. To make sure they fulfill the same purpose,
MS> committers are asked to provide informative ChangeLog entries and
MS> commit messsages. Commit messages may be identical to the ChangeLog
MS> entry.
By default, "hg log" only shows the first line of each commit message.
Are developers encouraged to write their commit messages so that the
first line is particularly meaningful? Or should we just get used to
doing "hg log -v" ?
cheers,
mike
_______________________________________________
XEmacs-Beta mailing list
XEmacs-Beta(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-beta