DEFINE-DEPRECATED-{FUNCTION,VARIABLE} improvements
commit307d72de43717e632abaad96f18a163f283cd17c
authorJan Moringen <jmoringe@techfak.uni-bielefeld.de>
Sun, 22 Feb 2015 23:16:45 +0000 (23 00:16 +0100)
committerJan Moringen <jmoringe@techfak.uni-bielefeld.de>
Sat, 28 Feb 2015 19:43:04 +0000 (28 20:43 +0100)
tree1ffb22273cfe05d99ee61fe3f21e2fb1003556cb
parent1ca37cfba3ce983ac96fb79b838edbdadffd9a7b
DEFINE-DEPRECATED-{FUNCTION,VARIABLE} improvements

* At runtime, deprecated variables in the :FINAL state behave like
  functions in that state: instead of an "undefined variable" error, a
  DEPRECATION-ERROR is signaled.

* GLOBAL-SYMBOL-VALUE checks for deprecated variables at compile-time
  like SYMBOL-MACRO already did.

* DEFINE-DEPRECATED-FUNCTION calls DEPRECATED-FUNCTION correctly and
  checks argument types.

* Some technicalities:
  * Moved PRINT-SYMBOL-WITH-PREFIX to early-extensions.lisp to make it
    available in the deprecation machinery.
  * DEFINE-DEPRECATED-VARIABLE checks argument types.
  * Added tests.
src/code/early-extensions.lisp
src/code/early-format.lisp
src/code/symbol.lisp
src/compiler/ir1tran.lisp
tests/deprecation.impure.lisp [new file with mode: 0644]