"Fix ert-tests when running compiled" 2016-12-06 accidentally
introduced a dependency on `bytecomp' into `ert'. As mentioned in
"Avoid ert test failures" 2017-04-18, the accidental dependency of ert
on bytecomp was masked by loading other libraries until recently.
* lisp/emacs-lisp/ert.el (ert--expand-should-1): Only use
`byte-compile-macro-environment' if it's bound.
* test/src/eval-tests.el: Add defvar for dynamic variable
`byte-compile-debug'.
(defun ert--expand-should-1 (whole form inner-expander)
"Helper function for the `should' macro and its variants."
- (require 'bytecomp) ; FIXME?
(let ((form
- (macroexpand form (append byte-compile-macro-environment
+ (macroexpand form (append (bound-and-true-p
+ byte-compile-macro-environment)
(cond
((boundp 'macroexpand-all-environment)
macroexpand-all-environment)
;; This should not crash.
(should-error (funcall '(closure)) :type 'invalid-function))
+(defvar byte-compile-debug)
+
(ert-deftest eval-tests--bugs-24912-and-24913 ()
"Checks that Emacs doesn’t accept weird argument lists.
Bug#24912 and Bug#24913."