all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* EIEIO defmethod broken if symbol already bound?
@ 2013-05-18 15:10 Wilfred Hughes
  2013-05-19  9:45 ` Pierre Lorenzon
  0 siblings, 1 reply; 2+ messages in thread
From: Wilfred Hughes @ 2013-05-18 15:10 UTC (permalink / raw
  To: help-gnu-emacs

Hi folks

I think this might be an Emacs bug, but I'm not familiar enough with EIEIO
to be certain. Suppose I want to assign a method foo to a class some-class:

(require 'eieio)

(defclass some-class ()
  ((bar :initform 42)))

(defmethod foo ((s some-class))
  1)

This works fine. However, if the function definition of foo is already
bound to t, it doesn't work:

(require 'eieio)

(defclass some-class ()
  ((bar :initform 42)))

(defalias 'foo 't)

(defmethod foo ((s some-class))
  1) ;; Debugger entered--Lisp error: (void-function foo)

I'm forced to set foo to a function (e.g. (defalias 'foo 'method)) before I
can use (defmethod foo ...). In fact, calling M-x describe-function <RET>
foo <RET> says 'file a bug report'.

Now, I know that (defalias 'foo 't) is silly thing to do. However, I
accidentally ended up in this state when hacking on some code.

Is this a legitimate bug? Emacs 24.2.1.

Thanks :)


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2013-05-19  9:45 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-05-18 15:10 EIEIO defmethod broken if symbol already bound? Wilfred Hughes
2013-05-19  9:45 ` Pierre Lorenzon

Code repositories for project(s) associated with this external index

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

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.