Replace DEF!METHOD and SB!XC:DEFMETHOD with just DEFMETHOD.
commite59c19ef069dd10332c538e5dba4807eed27c55d
authorDouglas Katzman <dougk@google.com>
Wed, 20 Apr 2016 13:58:44 +0000 (20 09:58 -0400)
committerDouglas Katzman <dougk@google.com>
Thu, 21 Apr 2016 00:45:47 +0000 (20 20:45 -0400)
tree10f202fedaca38b8145dfb0e9d05bc4eea4bdfda
parent1dfc0900a44ea279f1292c355e16b881c4a37e3e
Replace DEF!METHOD and SB!XC:DEFMETHOD with just DEFMETHOD.

PRINT-OBJECT works in cold load for methods which don't need
fancy method combination. As just one nifty example:
  % src/runtime/sbcl --core output/cold-sbcl.core
  * (sb-thread:list-all-threads)
  (#<SB-THREAD:THREAD "main thread" RUNNING {1002BE8F83}>)

instead of infinitely looping due to thread<->mutex pointers.

For complicated methods, there's DEF*METHOD which is what
DEF!METHOD was. The old name was bad; unlike other DEF!thing
macros, it had (and has) no effect upon the host Lisp.

Also we can reduce the incredible number of hacks that were
necessary to get MAKE-LOAD-FORM working without methods.
49 files changed:
build-order.lisp-expr
package-data-list.lisp-expr
src/assembly/assemfile.lisp
src/code/ansi-stream.lisp
src/code/class.lisp
src/code/cold-init.lisp
src/code/condition.lisp
src/code/debug-int.lisp
src/code/defstruct.lisp
src/code/early-alieneval.lisp
src/code/early-defbangmethod.lisp [deleted file]
src/code/early-defmethod.lisp [new file with mode: 0644]
src/code/early-extensions.lisp
src/code/fd-stream.lisp
src/code/force-delayed-defbangmethods.lisp
src/code/full-eval.lisp
src/code/host-alieneval.lisp
src/code/host-pprint.lisp
src/code/late-defbangmethod.lisp [deleted file]
src/code/late-type.lisp
src/code/loop.lisp
src/code/pathname.lisp
src/code/pprint.lisp
src/code/print.lisp
src/code/reader.lisp
src/code/serve-event.lisp
src/code/stream.lisp
src/code/target-alieneval.lisp
src/code/target-defstruct.lisp
src/code/target-error.lisp
src/code/target-hash-table.lisp
src/code/target-package.lisp
src/code/target-pathname.lisp
src/code/target-random.lisp
src/code/target-thread.lisp
src/code/timer.lisp
src/cold/chill.lisp
src/cold/defun-load-or-cload-xcompiler.lisp
src/cold/warm.lisp
src/compiler/info-vector.lisp
src/compiler/node.lisp
src/compiler/policies.lisp
src/compiler/vop.lisp
src/compiler/x86-64/insts.lisp
src/compiler/x86/insts.lisp
src/pcl/defs.lisp
src/pcl/env.lisp
src/pcl/methods.lisp
src/pcl/print-object.lisp