$ ecl
;;; Loading "/home/r/quicklisp/setup.lisp"
;;; Loading #P"/usr/lib/x86_64-linux-gnu/ecl-16.1.3/asdf.fas"
ECL (Embeddable Common-Lisp) 16.1.3 (git:UNKNOWN)
Copyright (C) 1984 Taiichi Yuasa and Masami Hagiya
Copyright (C) 1993 Giuseppe Attardi
Copyright (C) 2000 Juan J. Garcia-Ripoll
Copyright (C) 2016 Daniel Kochmanski
ECL is free software, and you are welcome to redistribute it
under certain conditions; see file 'Copyright' for details.
Type :h for Help.
Top level in: #<process TOP-LEVEL>.
> (ql:quickload :serapeum)
To load "serapeum":
Load 1 ASDF system:
serapeum
; Loading "serapeum"
;;;
;;; Compiling /home/r/quicklisp/dists/quicklisp/software/serapeum-20210807-git/box.lisp.
;;; OPTIMIZE levels: Safety=3, Space=0, Speed=1, Debug=3
;;;
;;; Error:
;;; in file box.lisp, position 88
;;; at (DEFSTRUCT (BOX # ...) ...)
;;; * The macro form (DEFSTRUCT (BOX (:CONSTRUCTOR BOX (UNBOX)) (:PREDICATE BOXP) (:CONC-NAME NIL) :ATOMIC-ACCESSORS) "A box is just a mutable cell.
;;;
;;; You create a box using `box' and get and set its value using the
;;; accessor `unbox'.
;;;
;;; (def a-box (box t))
;;; (unbox a-box) => t
;;; (setf (unbox a-box) nil)
;;; (unbox a-box) => nil
;;;
;;; Serapeum attempts to provide the guarantee that, on Lisps that support
;;; atomic operations (compare-and-swap), `unbox` on boxes should be
;;; updateable atomically. (See
;;; [atomics](https://github.com/Shinmera/atomics)).
;;;
;;; At the moment, boxes are implemented as structures, but that may
;;; change. In particular, you should not depend on being able to
;;; recognize boxes using a type or predicate." UNBOX) was not expanded successfully.
;;; Error detected:
;;; :ATOMIC-ACCESSORS is an illegal defstruct option.
Condition of type: COMPILE-FILE-ERROR
COMPILE-FILE-ERROR while compiling #<cl-source-file "serapeum" "level0" "box">
Available restarts:
1. (RETRY) Retry compiling #<cl-source-file "serapeum" "level0" "box">.
2. (ACCEPT) Continue, treating compiling #<cl-source-file "serapeum" "level0" "box"> as having been successful.
3. (RETRY) Retry ASDF operation.
4. (CLEAR-CONFIGURATION-AND-RETRY) Retry ASDF operation after resetting the configuration.
5. (ABORT) Give up on "serapeum"
6. (REGISTER-LOCAL-PROJECTS) Register local projects and try again.
7. (RESTART-TOPLEVEL) Go back to Top-Level REPL.
Broken at SI:BYTECODES. [Evaluation of: (QUICKLISP-CLIENT:QUICKLOAD :SERAPEUM)] In: #<process TOP-LEVEL>.