|
From: | Lars Brinkhoff |
Subject: | Re: User-defined record types, v2 |
Date: | Thu, 23 Mar 2017 08:02:18 +0100 |
User-agent: | Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux) |
Lars Brinkhoff wrote: >> Hmm... I can't reproduce this right now. Have you fixed it in the >> mean time? > > I'm rebuilding and checking again now. Still same error. This is exactly how I reproduce it: git clean -xfd ./autogen.sh make bootstrap make check # 2 files contained unexpected results: # lisp/emacs-lisp/eieio-tests/eieio-tests.log # lisp/emacs-lisp/eieio-tests/eieio-test-methodinvoke.log src/emacs -Q Evaluate this in *scratch* (progn (require 'eieio) (defclass foo () ((x :initarg :emu :initform emu :allocation :class :accessor get-foo))) (get-foo (foo)) (get-foo 'foo)) I get this backtrace: Debugger entered--Lisp error: (error "eieio-oref called on a class: foo") signal(error ("eieio-oref called on a class: foo")) error("eieio-oref called on a class: %s" foo) eieio-oref(foo x) (if (slot-boundp this (quote x)) (eieio-oref this (quote x))) (progn (if (slot-boundp this (quote x)) (eieio-oref this (quote x)))) (lambda (this) "Retrieve the slot `x' from an object of class `foo'." (progn (if (slot-boundp this (quote x)) (eieio-oref this (quote x))))) (foo) apply((lambda (this) "Retrieve the slot `x' from an object of class `foo'." (progn (if (slot-boundp this (quote x)) (eieio-oref this (quote x))))) foo nil) get-foo(foo) eval-region(146 305 t #[257 "\300\242b\210\301\207" [(305) (progn (require (quote eieio)) (progn (defalias (quote foo-p) (eieio-make-class-predicate (quote foo))) (defalias (quote foo--eieio-childp) (eieio-make-child-predicate (quote foo))) (defalias (quote foo-child-p) (quote foo--eieio-childp)) (make-obsolete (quote foo-child-p) "use (cl-typep ... 'foo) instead" "25.1") (put (quote foo) (quote cl-deftype-satisfies) (function foo--eieio-childp)) (eieio-defclass-internal (quote foo) (quote nil) (quote (...)) (quote nil)) (progn nil nil (cl-generic-define-method (quote get-foo) (quote nil) (quote ...) nil (function ...))) (progn nil nil (cl-generic-define-method (quote get-foo) (quote nil) (quote ...) nil (function ...))) (progn nil nil (cl-generic-define-method (quote \(setf\ get-foo\)) (quote nil) (quote ...) nil (function ...))) (prog1 (defalias (quote foo) (function ...)) (progn (quote foo--anon-cmacro) :autoload-end (quote foo--anon-cmacro)))) (get-foo (foo)) (get-foo (quote foo)))] 2 "\n\n(fn IGNORE)"]) ; Reading at buffer position 172 elisp--eval-defun() eval-defun(nil) funcall-interactively(eval-defun nil) call-interactively(eval-defun nil nil) command-execute(eval-defun)
[Prev in Thread] | Current Thread | [Next in Thread] |