unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Stefan Monnier <monnier@IRO.UMontreal.CA>
To: Juanma Barranquero <lekktu@gmail.com>
Cc: 11391-done@debbugs.gnu.org
Subject: bug#11391: wrong-type-argument error in vc-bzr operations
Date: Wed, 02 May 2012 22:42:48 -0400	[thread overview]
Message-ID: <jwvvckeuh3k.fsf-monnier+emacs@gnu.org> (raw)
In-Reply-To: <CAAeL0SSncnyrtLmEg9tsF+hCwZmCkLVjnziyg6XxTVx_ZWtEcw@mail.gmail.com> (Juanma Barranquero's message of "Wed, 2 May 2012 01:28:10 +0200")

>   Debugger entered--Lisp error: (wrong-type-argument sequencep lambda)
>   #[(s) "..." [s 20 0 2 "..."] 3](lambda)
>   (etc)

Good catch, thank you.
I've installed the patch below which should fix it,


        Stefan


=== modified file 'lisp/ChangeLog'
--- lisp/ChangeLog	2012-04-29 01:48:23 +0000
+++ lisp/ChangeLog	2012-05-03 02:37:04 +0000
@@ -1,3 +1,11 @@
+2012-05-03  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+	* emacs-lisp/bytecomp.el
+	(byte-compile-file-form-custom-declare-variable): Compile all elements,
+	since cconv.el might have introduced :fun-body, internal-make-closure,
+	and friends for bytecomp to handle (bug#11391).
+	* custom.el (defcustom): Avoid ((λ ..) ..).
+
 2012-04-29  Chong Yidong  <cyd@gnu.org>
 
 	* follow.el (follow-calc-win-end): Rewrite to handle partial

=== modified file 'lisp/custom.el'
--- lisp/custom.el	2012-04-14 01:46:06 +0000
+++ lisp/custom.el	2012-05-03 02:12:56 +0000
@@ -335,7 +335,7 @@
          ;; expression is checked by the byte-compiler, and that
          ;; lexical-binding is obeyed, so quote the expression with
          ;; `lambda' rather than with `quote'.
-         `(list (lambda () ,standard))
+         ``(funcall #',(lambda () ,standard))
        `',standard)
     ,doc
     ,@args))

=== modified file 'lisp/emacs-lisp/bytecomp.el'
--- lisp/emacs-lisp/bytecomp.el	2012-03-26 19:10:00 +0000
+++ lisp/emacs-lisp/bytecomp.el	2012-05-03 02:28:14 +0000
@@ -2267,19 +2267,7 @@
   (when (byte-compile-warning-enabled-p 'callargs)
     (byte-compile-nogroup-warn form))
   (push (nth 1 (nth 1 form)) byte-compile-bound-variables)
-  ;; Don't compile the expression because it may be displayed to the user.
-  ;; (when (eq (car-safe (nth 2 form)) 'quote)
-  ;;   ;; (nth 2 form) is meant to evaluate to an expression, so if we have the
-  ;;   ;; final value already, we can byte-compile it.
-  ;;   (setcar (cdr (nth 2 form))
-  ;;           (byte-compile-top-level (cadr (nth 2 form)) nil 'file)))
-  (let ((tail (nthcdr 4 form)))
-    (while tail
-      (unless (keywordp (car tail))      ;No point optimizing keywords.
-        ;; Compile the keyword arguments.
-        (setcar tail (byte-compile-top-level (car tail) nil 'file)))
-      (setq tail (cdr tail))))
-  form)
+  (byte-compile-keep-pending form))
 
 (put 'require 'byte-hunk-handler 'byte-compile-file-form-require)
 (defun byte-compile-file-form-require (form)






      reply	other threads:[~2012-05-03  2:42 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-05-01 23:28 bug#11391: wrong-type-argument error in vc-bzr operations Juanma Barranquero
2012-05-03  2:42 ` Stefan Monnier [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=jwvvckeuh3k.fsf-monnier+emacs@gnu.org \
    --to=monnier@iro.umontreal.ca \
    --cc=11391-done@debbugs.gnu.org \
    --cc=lekktu@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).