diff options
-rw-r--r-- | module/language/elisp/compile-tree-il.scm | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/module/language/elisp/compile-tree-il.scm b/module/language/elisp/compile-tree-il.scm index c683545d2..0e5e535d8 100644 --- a/module/language/elisp/compile-tree-il.scm +++ b/module/language/elisp/compile-tree-il.scm @@ -474,9 +474,12 @@ (defspecial eval-when (loc args) (pmatch args ((,situations . ,forms) - (let ((compile? (memq ':compile-toplevel situations)) - (load? (memq ':load-toplevel situations)) - (execute? (memq ':execute situations))) + (let ((compile? (or (memq ':compile-toplevel situations) + (memq 'compile situations))) + (load? (or (memq ':load-toplevel situations) + (memq 'load situations))) + (execute? (or (memq ':execute situations) + (memq 'eval situations)))) (cond ((not (fluid-ref toplevel?)) (if execute? |