unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#16980: eieio-generic-call shouldn't load libraries
@ 2014-03-10 18:35 Jonas Bernoulli
  2020-08-16 19:40 ` Jonas Bernoulli
  0 siblings, 1 reply; 3+ messages in thread
From: Jonas Bernoulli @ 2014-03-10 18:35 UTC (permalink / raw)
  To: 16980

eieio-generic-call loads the respective library when the first method
argument is a symbol which also happens to be the name of an autoloaded
function.  This is justifies like this:

    Is the class passed in autoloaded?
    Since class names are also constructors, they can be autoloaded
    via the autoload command.  Check for this, and load them in.
    It is ok if it doesn't turn out to be a class.  Probably want that
    function loaded anyway.

That assumption isn't always true.  E.g. I have written a little tool
that deals with Elisp libraries.  Some of methods are not only
implemented for objects that represent libraries but also for symbols
which stand for such libraries.  I was very surprised when calling these
methods started to load libraries.

  Best regards,
  Jonas





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

* bug#16980: eieio-generic-call shouldn't load libraries
  2014-03-10 18:35 bug#16980: eieio-generic-call shouldn't load libraries Jonas Bernoulli
@ 2020-08-16 19:40 ` Jonas Bernoulli
  2020-08-16 19:54   ` Lars Ingebrigtsen
  0 siblings, 1 reply; 3+ messages in thread
From: Jonas Bernoulli @ 2020-08-16 19:40 UTC (permalink / raw)
  To: 16980

Jonas Bernoulli <jonas@bernoul.li> writes:

> eieio-generic-call loads the respective library when the first method
> argument is a symbol which also happens to be the name of an autoloaded
> function.

This function does not exist anymore and this behavior does not appear
to have survived all the major refactorings.  I also tried to reproduce
the old behavior, but that too indicates that the issue is gone:

,----
| (cl-defmethod testibus ((arg (eql battery)))
|   arg)
| 
| (list (featurep 'battery)
|       (testibus 'battery)
|       (featurep 'battery)
|       (require  'battery))
| => (nil battery nil battery)
`----

So this can be close.  Thanks.





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

* bug#16980: eieio-generic-call shouldn't load libraries
  2020-08-16 19:40 ` Jonas Bernoulli
@ 2020-08-16 19:54   ` Lars Ingebrigtsen
  0 siblings, 0 replies; 3+ messages in thread
From: Lars Ingebrigtsen @ 2020-08-16 19:54 UTC (permalink / raw)
  To: Jonas Bernoulli; +Cc: 16980

Jonas Bernoulli <jonas@bernoul.li> writes:

> So this can be close.  Thanks.

OK; closed.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no





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

end of thread, other threads:[~2020-08-16 19:54 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-03-10 18:35 bug#16980: eieio-generic-call shouldn't load libraries Jonas Bernoulli
2020-08-16 19:40 ` Jonas Bernoulli
2020-08-16 19:54   ` Lars Ingebrigtsen

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).