#266: PSETF.47 ANSI regression -----------------------------+---------------------------------------------- Reporter: mevenson | Owner: nobody Type: defect | Status: new Priority: blocker | Milestone: 1.1.0 Component: java | Version: 1.1.0-dev Keywords: ansi-regression | -----------------------------+---------------------------------------------- According to a bisect caused by http://trac.common- lisp.net/armedbear/changeset/14035, but this looks wrong as r14035 merely adds an additional REQUIRE to format.lisp.
#266: PSETF.47 ANSI regression -----------------------------+---------------------------------------------- Reporter: mevenson | Owner: nobody Type: defect | Status: new Priority: blocker | Milestone: 1.1.0 Component: java | Version: 1.1.0-dev Keywords: ansi-regression | -----------------------------+----------------------------------------------
Comment(by rschlatte):
(setf mask-bit) is undefined until mask-bit is called. Maybe outoloading is to blame?
#266: PSETF.47 ANSI regression -----------------------------+---------------------------------------------- Reporter: mevenson | Owner: nobody Type: defect | Status: new Priority: blocker | Milestone: 1.1.0 Component: java | Version: 1.1.0-dev Keywords: ansi-regression | -----------------------------+----------------------------------------------
Comment(by ehuelsmann):
Yes. Autoloading *is* to blame. The reasons are documented in [http://trac .common- lisp.net/armedbear/browser/trunk/abcl/src/org/armedbear/lisp/setf.lisp#L61 setf.lisp line 61 through 67] and [http://trac.common- lisp.net/armedbear/browser/trunk/abcl/src/org/armedbear/lisp/setf.lisp#L93 setf.lisp lines 93 through 98]:
We used to assume we should resolve the symbol-function's autoloader. However, since DEFSETF and DEFINE-SETF-EXPANDER forms aren't required to be in the same file as the actual function, this doesn't work in the general case. Also: resolving every function for which a SETF form is encountered is undesirable because it can/will cause internal functions to be resolved before they're actually required. (This is the old strategy, btw, which caused circular dependencies in autoloaded code.)
#266: PSETF.47 ANSI regression -----------------------------+---------------------------------------------- Reporter: mevenson | Owner: nobody Type: defect | Status: new Priority: blocker | Milestone: 1.2.0 Component: java | Version: 1.1.0-dev Keywords: ansi-regression | -----------------------------+---------------------------------------------- Changes (by mevenson):
* milestone: 1.1.0 => 1.2.0
#266: PSETF.47 ANSI regression -----------------------+---------------------------------------------------- Reporter: mevenson | Owner: nobody Type: defect | Status: closed Priority: blocker | Milestone: 1.2.0 Component: java | Version: 1.1.0-dev Resolution: fixed | Keywords: ansi-regression -----------------------+---------------------------------------------------- Changes (by mevenson):
* status: new => closed * resolution: => fixed
Comment:
(In [14369]) Implementation of autoloader for SETF generalized references.
Fixes #296. Fixes #266. Fixes #228.
For forms which set the symbol properties of SETF-EXPANDER or SETF-FUNCTION to function definitions, places stub of type AutoloadGeneralizedReference to be resolved when first invoked.
#266: PSETF.47 ANSI regression -----------------------+---------------------------------------------------- Reporter: mevenson | Owner: nobody Type: defect | Status: closed Priority: blocker | Milestone: 1.2.0 Component: java | Version: 1.1.0-dev Resolution: fixed | Keywords: ansi-regression -----------------------+----------------------------------------------------
Comment(by mevenson):
(In [14378]) Backport r14369 | mevenson | 2013-02-13 20:01:20 +0100 (Wed, 13 Feb 2013) | 7 lines
Implementation of autoloader for SETF generalized references.
Fixes #296. Fixes #266. Fixes #228.
For forms which set the symbol properties of SETF-EXPANDER or SETF-FUNCTION to function definitions, places stub of type AutoloadGeneralizedReference to be resolved when first invoked.
Does NOT include changes to asdf.
#266: PSETF.47 ANSI regression -----------------------+---------------------------------------------------- Reporter: mevenson | Owner: nobody Type: defect | Status: closed Priority: blocker | Milestone: 1.1.1 Component: java | Version: 1.1.0-dev Resolution: fixed | Keywords: ansi-regression -----------------------+---------------------------------------------------- Changes (by mevenson):
* milestone: 1.2.0 => 1.1.1
armedbear-ticket@common-lisp.net