From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Tom Tromey Newsgroups: gmane.emacs.bugs Subject: bug#18321: 24.4.50; EIEIO and (defmethod (setf ...)) Date: Sat, 23 Aug 2014 20:33:21 -0600 Message-ID: <87zjeuk45q.fsf@tromey.com> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1408857030 16571 80.91.229.3 (24 Aug 2014 05:10:30 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sun, 24 Aug 2014 05:10:30 +0000 (UTC) To: 18321@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Sun Aug 24 07:10:23 2014 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1XLQ4N-0002aK-HB for geb-bug-gnu-emacs@m.gmane.org; Sun, 24 Aug 2014 07:10:23 +0200 Original-Received: from localhost ([::1]:43043 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XLQ4N-00057R-39 for geb-bug-gnu-emacs@m.gmane.org; Sun, 24 Aug 2014 01:10:23 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:44959) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XLQ4C-00056T-Q6 for bug-gnu-emacs@gnu.org; Sun, 24 Aug 2014 01:10:20 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XLQ44-0003Hc-LZ for bug-gnu-emacs@gnu.org; Sun, 24 Aug 2014 01:10:12 -0400 Original-Received: from debbugs.gnu.org ([140.186.70.43]:43666) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XLQ44-0003FT-DH for bug-gnu-emacs@gnu.org; Sun, 24 Aug 2014 01:10:04 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1XLQ42-00040E-MJ for bug-gnu-emacs@gnu.org; Sun, 24 Aug 2014 01:10:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Tom Tromey Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 24 Aug 2014 05:10:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 18321 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Original-Received: via spool by submit@debbugs.gnu.org id=B.140885699315354 (code B ref -1); Sun, 24 Aug 2014 05:10:02 +0000 Original-Received: (at submit) by debbugs.gnu.org; 24 Aug 2014 05:09:53 +0000 Original-Received: from localhost ([127.0.0.1]:50609 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1XLQ3r-0003zX-AA for submit@debbugs.gnu.org; Sun, 24 Aug 2014 01:09:53 -0400 Original-Received: from eggs.gnu.org ([208.118.235.92]:57440) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1XLNd6-0000Gl-PL for submit@debbugs.gnu.org; Sat, 23 Aug 2014 22:34:07 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XLNct-0002ux-Gt for submit@debbugs.gnu.org; Sat, 23 Aug 2014 22:33:59 -0400 Original-Received: from lists.gnu.org ([2001:4830:134:3::11]:41160) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XLNct-0002ut-Dh for submit@debbugs.gnu.org; Sat, 23 Aug 2014 22:33:51 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:59094) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XLNcm-0007HY-03 for bug-gnu-emacs@gnu.org; Sat, 23 Aug 2014 22:33:51 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XLNce-0002tk-T6 for bug-gnu-emacs@gnu.org; Sat, 23 Aug 2014 22:33:43 -0400 Original-Received: from gproxy4-pub.mail.unifiedlayer.com ([69.89.23.142]:46679) by eggs.gnu.org with smtp (Exim 4.71) (envelope-from ) id 1XLNce-0002tY-H3 for bug-gnu-emacs@gnu.org; Sat, 23 Aug 2014 22:33:36 -0400 Original-Received: (qmail 32486 invoked by uid 0); 24 Aug 2014 02:33:30 -0000 Original-Received: from unknown (HELO cmgw3) (10.0.90.84) by gproxy4.mail.unifiedlayer.com with SMTP; 24 Aug 2014 02:33:30 -0000 Original-Received: from box522.bluehost.com ([74.220.219.122]) by cmgw3 with id iYZP1o00Z2f2jeq01YZS1i; Sun, 24 Aug 2014 02:33:28 -0600 X-Authority-Analysis: v=2.1 cv=DIUcvU9b c=1 sm=1 tr=0 a=GsOEXm/OWkKvwdLVJsfwcA==:117 a=GsOEXm/OWkKvwdLVJsfwcA==:17 a=cNaOj0WVAAAA:8 a=f5113yIGAAAA:8 a=2JKW6f1FlkgA:10 a=hAjbelxh2AEA:10 a=_cZRQKYwz3QA:10 a=zstS-IiYAAAA:8 a=PnD2wP_eR3oA:10 a=oMhZhQ4-4PIA:10 a=GhpWSNjESqtWZkHpKJ4A:9 a=nUrjFB6grq8anI88:21 a=ySbNnkqrZQwdZwzl:21 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=tromey.com; s=default; h=Content-Type:MIME-Version:Message-ID:Date:Subject:To:From; bh=HRKE3dIM2eJazNkL4iy9AhMHLE4Yd2yu2oPjmIJPA1c=; b=HLX8yEBWuKQ60HA/HZEcbiCROhErAIni6cv2sTTFvEYw0DAAMaA52Dt22hkNRMSco+Rcs/+lb7RGFUn1QAbARFUGpuIO/6J+XZ1IgdNzXmT6sisi+vwIAp7ZOcCv+b0H; Original-Received: from [71.33.141.119] (port=37042 helo=bapiya) by box522.bluehost.com with esmtpsa (TLSv1.2:AES128-GCM-SHA256:128) (Exim 4.82) (envelope-from ) id 1XLNcS-0001Xz-VB for bug-gnu-emacs@gnu.org; Sat, 23 Aug 2014 20:33:25 -0600 X-Identified-User: {36111:box522.bluehost.com:elynrobi:tromey.com} {sentby:smtp auth 71.33.141.119 authed with tom+tromey.com} X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Mailman-Approved-At: Sun, 24 Aug 2014 01:09:49 -0400 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 140.186.70.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:92634 Archived-At: I was hoping this would work: (defclass hibob () ((click-callback :initform nil) (icon :initform "" :accessor hibob-icon))) (defmethod (setf hibob-icon) :after (newval (obj hibob)) (setq zzzz newval)) This works in Common Lisp and is quite handy. However in elisp this gives an error. Debugger entered--Lisp error: (wrong-type-argument symbolp (setf hibob-icon)) fboundp((setf hibob-icon)) eieio--defgeneric-init-form((setf hibob-icon) "Generically created method `(setf hibob-icon)'.") (eieio--defalias (quote (setf hibob-icon)) (eieio--defgeneric-init-form (quote (setf hibob-icon)) "Generically created method `(setf hibob-icon)'.")) (progn (eieio--defalias (quote (setf hibob-icon)) (eieio--defgeneric-init-form (quote (setf hibob-icon)) "Generically created method `(setf hibob-icon)'.")) (eieio--defmethod (quote (setf hibob-icon)) (quote :after) (quote nil) (function (lambda (newval (obj hibob)) (setq zzzz newval))))) I didn't see a documented way to augment the slot setter method, which is what I'm really trying to do. In GNU Emacs 24.4.50.2 (x86_64-unknown-linux-gnu, GTK+ Version 3.10.9) of 2014-08-22 on bapiya Repository revision: 117722 yamaoka@jpl.org-20140821230223-mmy41yexo692kipp Windowing system distributor `Fedora Project', version 11.0.11404000 Configured using: `configure --prefix=/home/tromey/Emacs/install' Configured features: XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GCONF GSETTINGS NOTIFY LIBSELINUX GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB Important settings: value of $LANG: en_US.UTF-8 value of $XMODIFIERS: @im=none locale-coding-system: utf-8-unix Major mode: Emacs-Lisp Minor modes in effect: flyspell-mode: t eldoc-mode: t which-function-mode: t global-auto-revert-mode: t erc-services-mode: t erc-list-mode: t erc-menu-mode: t erc-autojoin-mode: t erc-ring-mode: t erc-networks-mode: t erc-pcomplete-mode: t erc-track-mode: t erc-match-mode: t erc-button-mode: t erc-fill-mode: t erc-stamp-mode: t erc-netsplit-mode: t erc-irccontrols-mode: t erc-noncommands-mode: t erc-move-to-prompt-mode: t erc-readonly-mode: t savehist-mode: t tooltip-mode: t electric-indent-mode: t mouse-wheel-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t column-number-mode: t line-number-mode: t auto-fill-function: do-auto-fill Recent input: t h o d C-a C-u C-n C-p C-s e i e C-w C-w C-w C-s C-s M-b M-x l g r e p C-x o C-x 1 C-u C-u C-n C-n C-n C-n C-n C-c C-c C-x 1 C-l C-s m e t h o d C-a C-u C-u C-n C-l C-s C-s C-z n C-p C-e C-j C-z n M-< C-s d e f g e n e r i c - i n i t C-w C-a C-z n C-] C-z n C-x b e i e M-v M-< C-s : a c c e s s C-w M-< C-s k a r l C-a C-u C-SPC C-s C-s M-p C-s C-s C-a M-x l g r e p : a c c C-x o C-x 1 C-u C-u C-n C-n C-c C-c C-x 1 M-m C-f C-s C-w C-s C-s C-s C-v C-l M-v C-v C-s w r i t e r M-v C-z n C-l C-u C-p C-u C-p C-l M-v C-l C-p C-p C-M-f C-M-b C-n C-M-f C-f C-f C-l C-M-f C-M-b C-M-f C-l C-a C-u C-u C-p C-l C-u C-u C-p C-s e i e o e i o - C-a C-s - o s e t C-a C-p M-f M-f C-h f C-x 1 C-z n M-v M-v C-h f d e f m e t C-h f d e f m a t h C-h f M-p C-h f M-p M-p C-x o C-x 1 C-z n C-l z n C-c C-g C-/ C-z n C-c b M-v C-z n M-x r e p o r t - e m Recent messages: Grep finished (matches found) Mark saved where search started [4 times] Type C-x 1 to delete the help window. scroll-down-command: Beginning of buffer Making completion list... Type C-x 1 to delete the help window, C-M-v to scroll help. [3 times] C-c C-g is undefined Quit Undo! Load-path shadows: /home/tromey/.emacs.d/elpa/css-mode-1.0/css-mode hides /home/tromey/Emacs/install/share/emacs/24.4.50/lisp/textmodes/css-mode /home/tromey/.emacs.d/elpa/bubbles-0.5/bubbles hides /home/tromey/Emacs/install/share/emacs/24.4.50/lisp/play/bubbles Features: (shadow sort mail-extr warnings emacsbug sendmail gv debug jka-compr eieio-opt speedbar sb-image ezimage dframe help-mode dabbrev log-edit easy-mmode message dired rfc822 mml mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 ietf-drums mailabbrev mail-utils gmm-utils mailheader pcvs-util copyright add-log status misearch multi-isearch vc-arch vc-mtn vc-hg vc-git vc-bzr vc-sccs vc-svn vc-cvs vc-rcs flyspell ispell eldoc diminish projectile edmacro kmacro pkg-info find-func lisp-mnt epl grep compile dash s dwarf-mode-autoloads gdb-shell-autoloads jabber-autoloads lisppaste-autoloads pydoc-info-autoloads info-look info weblogger-autoloads package appt diary-lib diary-loaddefs cal-menu calendar cal-loaddefs which-func imenu autorevert filenotify cus-start cus-load erc-services erc-list erc-menu easymenu erc-join erc-ring erc-networks erc-pcomplete pcomplete erc-track erc-match erc-button wid-edit cl-loaddefs cl-lib erc-fill erc-stamp erc-netsplit erc-goodies erc erc-backend erc-compat format-spec auth-source eieio byte-opt bytecomp byte-compile cconv eieio-core gnus-util mm-util mail-prsvr password-cache thingatpt pp advice help-fns vc-dir ewoc vc vc-dispatcher cc-styles cc-align cc-engine cc-vars cc-defs bbdb timezone ange-ftp comint ansi-color ring server savehist bbdb-autoloads time-date tooltip electric uniquify ediff-hook vc-hooks lisp-float-type mwheel x-win x-dnd tool-bar dnd fontset image regexp-opt fringe tabulated-list newcomment lisp-mode prog-mode register page menu-bar rfn-eshadow timer select scroll-bar 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 minibuffer nadvice loaddefs button faces cus-face macroexp files text-properties overlay sha1 md5 base64 format env code-pages mule custom widget hashtable-print-readable backquote make-network-process dbusbind gfilenotify dynamic-setting system-font-setting font-render-setting move-toolbar gtk x-toolkit x multi-tty emacs) Memory information: ((conses 16 219861 41035) (symbols 48 33411 0) (miscs 40 716 2382) (strings 32 55441 8977) (string-bytes 1 1726575) (vectors 16 31815) (vector-slots 8 1321774 174920) (floats 8 135 717) (intervals 56 5229 305) (buffers 976 25) (heap 1024 166051 29102))