emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Bootstrap/autoload policy (was Re: regular expressions that match no


From: Mattias Engdegård
Subject: Re: Bootstrap/autoload policy (was Re: regular expressions that match nothing)
Date: Wed, 22 May 2019 18:40:21 +0200

22 maj 2019 kl. 17.53 skrev Stefan Monnier <address@hidden>:
> 
> Ah, I think I know what's going on.  See this part of cl-lib.el:
> 
>    (unless (load "cl-loaddefs" 'noerror 'quiet)
>      ;; When bootstrapping, cl-loaddefs hasn't been built yet!
>      (require 'cl-macs)
>      (require 'cl-seq))
> 
> Adding `cl-extra` here would likely fix your problem 

No, now the bootstrap just fails earlier:

Loading /Users/mattias/emacs/lisp/emacs-lisp/cl-preloaded.el (source)...
Eager macro-expansion failure: (void-function help-add-fundoc-usage)
Eager macro-expansion failure: (void-function help-add-fundoc-usage)
Eager macro-expansion failure: (void-function help-add-fundoc-usage)
Eager macro-expansion failure: (void-function help-add-fundoc-usage)
Eager macro-expansion failure: (void-function help-add-fundoc-usage)
Eager macro-expansion failure: (void-function help-add-fundoc-usage)
Eager macro-expansion failure: (void-function help-add-fundoc-usage)
Eager macro-expansion failure: (void-function help-add-fundoc-usage)
Symbol’s function definition is void: help-add-fundoc-usage

I think the (require 'cl-extra) better stay in rx.el until this mess has been 
sorted out.

> (of course, using
> (memq nil (mapcar ...)) is a perfectly fine alternative as well).

That's what I always have been using, but given that cl-every and cl-some are 
easier to read, understand, and write, and generally faster, I've sort of 
changed tack. Maybe we should add `every' and `some' as builtins?




reply via email to

[Prev in Thread] Current Thread [Next in Thread]