[armedbear-cvs] r12649 - trunk/abcl/src/org/armedbear/lisp
Erik Huelsmann
ehuelsmann at common-lisp.net
Sun May 2 18:51:38 UTC 2010
Author: ehuelsmann
Date: Sun May 2 14:51:35 2010
New Revision: 12649
Log:
Re #79: Add *FASL-UNINTERNED-SYMBOLS* variable to Load.java and save its value
in AutoloadedFunctionProxy, just like *FASL-ANONYMOUS-PACKAGE*.
Modified:
trunk/abcl/src/org/armedbear/lisp/AutoloadedFunctionProxy.java
trunk/abcl/src/org/armedbear/lisp/Load.java
Modified: trunk/abcl/src/org/armedbear/lisp/AutoloadedFunctionProxy.java
==============================================================================
--- trunk/abcl/src/org/armedbear/lisp/AutoloadedFunctionProxy.java (original)
+++ trunk/abcl/src/org/armedbear/lisp/AutoloadedFunctionProxy.java Sun May 2 14:51:35 2010
@@ -51,6 +51,7 @@
{
AUTOLOADING_CACHE, // allow loading local preloaded functions
Load._FASL_ANONYMOUS_PACKAGE_, // package for uninterned symbols
+ Load._FASL_UNINTERNED_SYMBOLS_, // vector of uninterned symbols
Symbol._PACKAGE_, // current package
Symbol.LOAD_TRUENAME // LOAD-TIME-VALUE depends on this
};
Modified: trunk/abcl/src/org/armedbear/lisp/Load.java
==============================================================================
--- trunk/abcl/src/org/armedbear/lisp/Load.java (original)
+++ trunk/abcl/src/org/armedbear/lisp/Load.java Sun May 2 14:51:35 2010
@@ -379,6 +379,17 @@
public static final Symbol _FASL_ANONYMOUS_PACKAGE_ =
internSpecial("*FASL-ANONYMOUS-PACKAGE*", PACKAGE_SYS, NIL);
+ // ### *fasl-uninterned-symbols*
+ // internal symbol
+ /**
+ * This variable gets bound to NIL upon loading a FASL, but
+ * gets set to a vector of symbols as one of the first actions
+ * by the FASL itself.
+ *
+ */
+ public static final Symbol _FASL_UNINTERNED_SYMBOLS_ =
+ internSpecial("*FASL-UNINTERNED-SYMBOLS*", PACKAGE_SYS, NIL);
+
// ### init-fasl &key version
private static final Primitive INIT_FASL = new init_fasl();
private static class init_fasl extends Primitive {
@@ -394,6 +405,7 @@
// OK
final LispThread thread = LispThread.currentThread();
thread.bindSpecial(_FASL_ANONYMOUS_PACKAGE_, NIL);
+ thread.bindSpecial(_FASL_UNINTERNED_SYMBOLS_, NIL);
thread.bindSpecial(_SOURCE_, NIL);
return faslLoadStream(thread);
}
@@ -409,8 +421,8 @@
boolean print,
boolean auto)
{
- return loadFileFromStream(pathname == null ? NIL : pathname,
- truename == null ? NIL : truename,
+ return loadFileFromStream(pathname == null ? NIL : pathname,
+ truename == null ? NIL : truename,
in, verbose, print, auto, false);
}
More information about the armedbear-cvs
mailing list