GNU bug report logs -
#6275
23.2; warning-suppress-types is void after defadvice
Previous Next
Reported by: SAITO Takuya <tabmore <at> gmail.com>
Date: Wed, 26 May 2010 15:46:01 UTC
Severity: normal
Merged with 6373,
6682
Found in version 23.2
Done: Stefan Monnier <monnier <at> iro.umontreal.ca>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
Your bug report
#6275: 23.2; warning-suppress-types is void after defadvice
which was filed against the emacs package, has been closed.
The explanation is attached below, along with your original report.
If you require more details, please reply to 6275 <at> debbugs.gnu.org.
--
6275: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=6275
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
forcemerge 6275 6373
thanks
> Debugger entered--Lisp error: (void-variable warning-suppress-types)
[...]
> ad-compile-function() binds warning-suppress-types with let.
> I guess warnings.el is loaded inside of that let-binding.
Indeed, thank you. I've installed the patch below which should fix it.
Stefan
=== modified file 'lisp/emacs-lisp/advice.el'
--- lisp/emacs-lisp/advice.el 2010-02-15 20:03:22 +0000
+++ lisp/emacs-lisp/advice.el 2010-06-09 01:16:08 +0000
@@ -2684,6 +2684,8 @@
;; because `byte-compile' uses `fset':
(ad-with-auto-activation-disabled
(require 'bytecomp)
+ (require 'warnings) ;To define warning-suppress-types
+ ;before we let-bind it.
(let ((symbol (make-symbol "advice-compilation"))
(byte-compile-warnings byte-compile-warnings)
;; Don't pop up windows showing byte-compiler warnings.
[Message part 3 (message/rfc822, inline)]
Start Emacs-23.2 with "emacs -Q" and evaluate below
with \C-x\C-e in *scratch* buffer:
(defadvice forward-line (before sample activate compile) (setq xxx zzz))
(byte-compile (lambda () (setq xxx zzz)))
then, *Backtrace* buffer is displayed
Debugger entered--Lisp error: (void-variable warning-suppress-types)
display-warning(bytecomp "Symbol's value as variable is void: warning-suppress-types" :error "*Compile-Log*")
byte-compile-log-warning("Symbol's value as variable is void: warning-suppress-types" nil :error)
byte-compile-report-error((void-variable warning-suppress-types))
byte-compile((lambda nil (setq xxx zzz)))
eval((byte-compile (lambda nil (setq xxx zzz))))
eval-last-sexp-1(nil)
eval-last-sexp(nil)
call-interactively(eval-last-sexp nil nil)
ad-compile-function() binds warning-suppress-types with let.
I guess warnings.el is loaded inside of that let-binding.
In GNU Emacs 23.2.1 (i386-mingw-nt6.0.6002)
of 2010-05-08 on G41R2F1
Windowing system distributor `Microsoft Corp.', version 6.0.6002
configured using `configure --with-gcc (3.4) --no-opt --cflags -Ic:/xpm/include'
Important settings:
value of $LC_ALL: nil
value of $LC_COLLATE: nil
value of $LC_CTYPE: nil
value of $LC_MESSAGES: nil
value of $LC_MONETARY: nil
value of $LC_NUMERIC: nil
value of $LC_TIME: nil
value of $LANG: JPN
value of $XMODIFIERS: nil
locale-coding-system: cp932
default enable-multibyte-characters: t
Major mode: Lisp Interaction
Minor modes in effect:
tooltip-mode: t
mouse-wheel-mode: t
tool-bar-mode: t
menu-bar-mode: t
file-name-shadow-mode: t
global-font-lock-mode: t
font-lock-mode: t
blink-cursor-mode: t
auto-encryption-mode: t
auto-compression-mode: t
line-number-mode: t
transient-mark-mode: t
Recent input:
<help-echo> <help-echo> <down-mouse-1> <mouse-1> C-y
C-p C-p C-e C-x C-e C-n C-x C-e q M-x r e p o <tab>
r <tab> <return>
Recent messages:
For information about GNU Emacs and the GNU system, type C-h C-a.
Mark set
forward-line
Entering debugger...
Back to top level.
Making completion list...
Load-path shadows:
None found.
Features:
(shadow sort mail-extr message ecomplete rfc822 mml mml-sec
password-cache mm-decode mm-bodies mm-encode mailcap mail-parse rfc2231
rfc2047 rfc2045 qp ietf-drums mailabbrev nnheader gnus-util netrc
time-date mm-util mail-prsvr gmm-utils wid-edit mailheader canlock sha1
hex-util hashcash mail-utils emacsbug help-mode easymenu view debug
warnings byte-opt bytecomp byte-compile advice help-fns advice-preload
japan-util tooltip ediff-hook vc-hooks lisp-float-type mwheel dos-w32
disp-table ls-lisp w32-win w32-vars tool-bar dnd fontset image fringe
lisp-mode register page menu-bar rfn-eshadow timer select scroll-bar
mldrag mouse jit-lock font-lock syntax facemenu font-core frame cham
georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao
korean japanese hebrew greek romanian slovak czech european ethiopic
indian cyrillic chinese case-table epa-hook jka-cmpr-hook help simple
abbrev loaddefs button minibuffer faces cus-face files text-properties
overlay md5 base64 format env code-pages mule custom widget
hashtable-print-readable backquote make-network-process multi-tty emacs)
This bug report was last modified 13 years and 227 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.