From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Kevin Ryde Newsgroups: gmane.emacs.bugs Subject: bug#5026: 23.1; add-hook buffer local vs single func Date: Tue, 24 Nov 2009 08:04:41 +1100 Message-ID: <87bpitlzpy.fsf@blah.blah> Reply-To: Kevin Ryde , 5026@emacsbugs.donarmstrong.com NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: ger.gmane.org 1259012567 21023 80.91.229.12 (23 Nov 2009 21:42:47 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Mon, 23 Nov 2009 21:42:47 +0000 (UTC) To: bug-gnu-emacs@gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Mon Nov 23 22:42:39 2009 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1NCgg9-00042W-Nm for geb-bug-gnu-emacs@m.gmane.org; Mon, 23 Nov 2009 22:42:38 +0100 Original-Received: from localhost ([127.0.0.1]:48650 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NCgg8-0000OX-Td for geb-bug-gnu-emacs@m.gmane.org; Mon, 23 Nov 2009 16:42:36 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NCgRX-0003Yx-PG for bug-gnu-emacs@gnu.org; Mon, 23 Nov 2009 16:27:31 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1NCgRR-0003Qz-5r for bug-gnu-emacs@gnu.org; Mon, 23 Nov 2009 16:27:29 -0500 Original-Received: from [199.232.76.173] (port=59226 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NCgRR-0003Qk-0L for bug-gnu-emacs@gnu.org; Mon, 23 Nov 2009 16:27:25 -0500 Original-Received: from rzlab.ucr.edu ([138.23.92.77]:33685) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1NCgRQ-0001qn-EK for bug-gnu-emacs@gnu.org; Mon, 23 Nov 2009 16:27:24 -0500 Original-Received: from rzlab.ucr.edu (rzlab.ucr.edu [127.0.0.1]) by rzlab.ucr.edu (8.14.3/8.14.3/Debian-5) with ESMTP id nANLRMQp023835; Mon, 23 Nov 2009 13:27:22 -0800 Original-Received: (from debbugs@localhost) by rzlab.ucr.edu (8.14.3/8.14.3/Submit) id nANLF4P3022761; Mon, 23 Nov 2009 13:15:04 -0800 Resent-Date: Mon, 23 Nov 2009 13:15:04 -0800 X-Loop: owner@emacsbugs.donarmstrong.com Resent-From: Kevin Ryde Resent-To: bug-submit-list@donarmstrong.com Resent-CC: Emacs Bugs 2Resent-Date: Mon, 23 Nov 2009 21:15:04 +0000 Resent-Message-ID: Resent-Sender: owner@emacsbugs.donarmstrong.com X-Emacs-PR-Message: report 5026 X-Emacs-PR-Package: emacs X-Emacs-PR-Keywords: Original-Received: via spool by submit@emacsbugs.donarmstrong.com id=B.125901033422237 (code B ref -1); Mon, 23 Nov 2009 21:15:04 +0000 Original-Received: (at submit) by emacsbugs.donarmstrong.com; 23 Nov 2009 21:05:34 +0000 X-Spam-Bayes: score:0.5 Bayes not run. spammytokens:Tokens not available. hammytokens:Tokens not available. Original-Received: from lists.gnu.org (lists.gnu.org [199.232.76.165]) by rzlab.ucr.edu (8.14.3/8.14.3/Debian-5) with ESMTP id nANL5W6R022234 for ; Mon, 23 Nov 2009 13:05:34 -0800 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NCg6F-00008j-8q for bug-gnu-emacs@gnu.org; Mon, 23 Nov 2009 16:05:31 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1NCg6A-0008VH-Hl for bug-gnu-emacs@gnu.org; Mon, 23 Nov 2009 16:05:30 -0500 Original-Received: from [199.232.76.173] (port=59948 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NCg6A-0008V4-BT for bug-gnu-emacs@gnu.org; Mon, 23 Nov 2009 16:05:26 -0500 Original-Received: from mailout1-1.pacific.net.au ([61.8.2.208]:41226 helo=mailout1.pacific.net.au) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1NCg69-0007S8-KM for bug-gnu-emacs@gnu.org; Mon, 23 Nov 2009 16:05:26 -0500 Original-Received: from mailproxy1.pacific.net.au (mailproxy1.pacific.net.au [61.8.2.162]) by mailout1.pacific.net.au (Postfix) with ESMTP id AB31750F9A1 for ; Tue, 24 Nov 2009 08:05:16 +1100 (EST) Original-Received: from blah.blah (ppp27BB.dyn.pacific.net.au [61.8.39.187]) by mailproxy1.pacific.net.au (Postfix) with ESMTP id E68BD8C0D for ; Tue, 24 Nov 2009 08:05:15 +1100 (EST) Original-Received: from gg by blah.blah with local (Exim 4.69) (envelope-from ) id 1NCg5S-0003h7-9f for bug-gnu-emacs@gnu.org; Tue, 24 Nov 2009 08:04:42 +1100 User-Agent: Gnus/5.110011 (No Gnus v0.11) Emacs/23.1 (gnu/linux) X-detected-operating-system: by monty-python.gnu.org: GNU/Linux 2.6, seldom 2.4 (older, 4) X-detected-operating-system: by monty-python.gnu.org: GNU/Linux 2.6 (newer, 2) Resent-Date: Mon, 23 Nov 2009 16:27:29 -0500 X-BeenThere: bug-gnu-emacs@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:32863 Archived-At: Evaluating (progn (defvar foo nil) (defun func1 () (error "this is func 1")) (defun func2 () (message "this if func 2")) (setq foo 'func1) (add-hook 'foo 'func2 nil ;; prepend t) ;; buffer-local (run-hooks 'foo)) returns nil, where I expected the run-hooks to run both func2 and func1, raising the error in func1. The elisp manual under "Setting Hooks" says `add-hook' can handle the cases where ... its value is a single function; but that doesn't seem to be so when extending a single function to a buffer-local value. I suspect it's run-hooks which should be blamed rather than add-hook. Should run-hooks allow a single-function global value when it follows a `t' from a local value? I expect this arises only rarely. But if it does then it's a pretty subtle way to miss out on a function you thought you had in a hook. In GNU Emacs 23.1.1 (i486-pc-linux-gnu, GTK+ Version 2.16.5) of 2009-09-14 on raven, modified by Debian configured using `configure '--build=i486-linux-gnu' '--host=i486-linux-gnu' '--prefix=/usr' '--sharedstatedir=/var/lib' '--libexecdir=/usr/lib' '--localstatedir=/var/lib' '--infodir=/usr/share/info' '--mandir=/usr/share/man' '--with-pop=yes' '--enable-locallisppath=/etc/emacs23:/etc/emacs:/usr/local/share/emacs/23.1/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/23.1/site-lisp:/usr/share/emacs/site-lisp:/usr/share/emacs/23.1/leim' '--with-x=yes' '--with-x-toolkit=gtk' '--with-toolkit-scroll-bars' 'build_alias=i486-linux-gnu' 'host_alias=i486-linux-gnu' 'CFLAGS=-DDEBIAN -g -O2' 'LDFLAGS=-g' 'CPPFLAGS='' 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: en_AU value of $XMODIFIERS: nil locale-coding-system: iso-latin-1-unix default-enable-multibyte-characters: t