Search code examples
common-lispquicklisplispworks

Error loading `rutils` from Lispworks


I can swear this used to work earlier.

CL-USER 7 > (ql:quickload 'rutils)
To load "rutils":
  Load 1 ASDF system:
    rutils
; Loading "rutils"
[package editor-hints.named-readtables]..
.........
[package rutils.readtable]........................
[package rutils.core].............................
[package rutils.misc].............................
[package rutils.anaphora].........................
[package rutils.list].............................
[package rutils.string]...........................
[package rutils.hash-table].......................
[package rutils.hash-set].........................
[package rutils.array]............................
[package rutils.sequence].........................
[package rutils.pair].............................
[package rutils.tree].............................
[package rutils.abbr].............................
[package rutils]..................................
[package rutil]......
......
...
..
.

Error: Redefining macro := visible from package KEYWORD { *handle-warn-on-redefinition* is :ERROR }
   1 (continue) Redefine it anyway.
   2 Try loading /Users/agam/.cache/common-lisp/lw-7.1.0-macosx-x64/Users/agam/quicklisp/dists/quicklisp/software/rutils-20180228-git/core/abbr.64xfasl again.
   3 Give up loading /Users/agam/.cache/common-lisp/lw-7.1.0-macosx-x64/Users/agam/quicklisp/dists/quicklisp/software/rutils-20180228-git/core/abbr.64xfasl.
   4 Try loading another file instead of /Users/agam/.cache/common-lisp/lw-7.1.0-macosx-x64/Users/agam/quicklisp/dists/quicklisp/software/rutils-20180228-git/core/abbr.64xfasl.
   5 Recompile abbr and try loading it again
   6 Retry loading FASL for
   #.
   7 Continue, treating loading FASL for
   #
     as having been successful.
   8 Retry ASDF operation.
   9 Retry ASDF operation after resetting the configuration.
  10 Retry ASDF operation.
  11 Retry ASDF operation after resetting the configuration.
  12 (abort) Give up on "rutils"
  13 Return to top loop level 0.

Type :b for backtrace or :c  to proceed.
Type :bug-form "" for a bug report template or :? for other options.

Any clues?


Solution

  • I can make it go away by running CL-USER 10 > (setf *handle-warn-on-redefinition* :warn) but is that the right way?

    Yes, that's one way to get rid of that problem. You can set that for example in your home directory in the file .lispworks . By default LispWorks tries to protect the keyword package (and a bunch of others) against user changes.

    Note also that you can use the first restart to redefine it anyway and to continue.