はまったので。
auto-async-byte-compileは便利なのですが、init-loaderで分割したinitfile(10-xxx.el)上で、use-packageを併用しているとうまくcompileされません。(正確には実行時にエラー)
use-package.el is no longer needed at runtime
This means you should put the following at the top of your Emacs, to further reduce load time:
(eval-when-compile
(require 'use-package))
となっているので、仕様どおりの動作。とはいえ、分割したファイル全てに記載するのもいやなので、
悩んでいたのですが、auto-async-byte-compileのソースにoptionの記載があり、
解決しました。
;; `auto-async-byte-compile-init-file'
;; *Load this file when batch-byte-compile is running.
;;default = "~/.emacs.d/initfuncs.el"
なので自分は、init.elに(eval-when-compile〜 を書いて
(eval-when-compile
(require 'use-package)
(require 'diminish)
(require 'bind-key))
(setq auto-async-byte-compile-init-file "~/.emacs.d/init.el")
としました。
init.elでなくてもいいような気もしますが、どっちにしろ先頭で読む必要があるので。