Problems in CL-STORE's use of FLEXI-STREAMS trying to run jfarm
A installing [httpshttps://github.com/lmj/lfarm/blob/master/README.md lfarm] and using QL:QUICKLOAD to resolve dependencies, one encounters the following error:
The value #<FLEXI-STREAMS::VECTOR-OUTPUT-STREAM {64F9644E}> is not of type STREAM.
[Condition of type TYPE-ERROR]
0: (#<FUNCTION {66D85E40}> #<TYPE-ERROR {3613D35}> #<FUNCTION {66D85E40}>)
1: (APPLY #<FUNCTION {66D85E40}> (#<TYPE-ERROR {3613D35}> #<FUNCTION {66D85E40}>))
2: (SYSTEM::RUN-HOOK SYSTEM::*INVOKE-DEBUGGER-HOOK* #<TYPE-ERROR {3613D35}> #<FUNCTION {66D85E40}>)
3: (INVOKE-DEBUGGER #<TYPE-ERROR {3613D35}>)
4: (ERROR #<TYPE-ERROR {3613D35}>)
5: (LFARM-COMMON::TRANSLATE-ERROR #<CL-STORE:STORE-ERROR {713F080}>)
6: (#<FUNCTION (LAMBDA (CL-STORE::C)) {2E126721}> #<TYPE-ERROR {3613D35}>)
7: (SIGNAL #<TYPE-ERROR {3613D35}>)
8: org.armedbear.lisp.Lisp.error(Lisp.java:382)
9: org.armedbear.lisp.Lisp.type_error(Lisp.java:435)
10: org.armedbear.lisp.default_backend_ASDF_TMP_93.execute(default-backend.lisp:712)
11: org.armedbear.lisp.Symbol.execute(Symbol.java:826)
12: org.armedbear.lisp.default_backend_ASDF_TMP_92.execute(default-backend.lisp:703)
13: org.armedbear.lisp.Symbol.execute(Symbol.java:814)
14: org.armedbear.lisp.default_backend_ASDF_TMP_79.execute(default-backend.lisp:584)
15: org.armedbear.lisp.clos_306.execute(clos.lisp:2719)
16: org.armedbear.lisp.LispThread.execute(LispThread.java:644)
17: org.armedbear.lisp.clos_292.execute(clos.lisp:2527)
18: org.armedbear.lisp.Symbol.execute(Symbol.java:814)
19: org.armedbear.lisp.clos_278.execute(clos.lisp:2301)
20: org.armedbear.lisp.FuncallableStandardObject.execute(FuncallableStandardObject.java:117)
21: org.armedbear.lisp.Symbol.execute(Symbol.java:826)
22: org.armedbear.lisp.LispThread.execute(LispThread.java:670)
23: org.armedbear.lisp.circularities_ASDF_TMP_42.execute(circularities.lisp:178)
24: org.armedbear.lisp.clos_306.execute(clos.lisp:2719)
25: org.armedbear.lisp.LispThread.execute(LispThread.java:644)
26: org.armedbear.lisp.clos_292.execute(clos.lisp:2527)
27: org.armedbear.lisp.Symbol.execute(Symbol.java:814)
28: org.armedbear.lisp.clos_278.execute(clos.lisp:2301)
29: org.armedbear.lisp.FuncallableStandardObject.execute(FuncallableStandardObject.java:117)
30: org.armedbear.lisp.Symbol.execute(Symbol.java:826)
31: org.armedbear.lisp.circularities_ASDF_TMP_35.execute(circularities.lisp:132)
32: org.armedbear.lisp.clos_306.execute(clos.lisp:2719)
33: org.armedbear.lisp.LispThread.execute(LispThread.java:644)
34: org.armedbear.lisp.circularities_ASDF_TMP_32.execute(circularities.lisp:129)
35: org.armedbear.lisp.CompiledClosure.execute(CompiledClosure.java:89)
36: org.armedbear.lisp.circularities_ASDF_TMP_34.execute(circularities.lisp:129)
37: org.armedbear.lisp.LispThread.execute(LispThread.java:670)
38: org.armedbear.lisp.Primitives$pf_apply.execute(Primitives.java:2798)
39: (#<FUNCTION {5655F8F0}> (#<CL-STORE:CL-STORE {264A80D8}> "hello" #<FLEXI-STREAMS::VECTOR-OUTPUT-STREAM {64F9644E}>))
40: (CL-STORE:INTERNAL-STORE-OBJECT #<CL-STORE:CL-STORE {264A80D8}> "hello" #<FLEXI-STREAMS::VECTOR-OUTPUT-STREAM {64F9644E}>)
41: (#<FUNCTION {6550F88B}> (#<CL-STORE:CL-STORE {264A80D8}> "hello" #<FLEXI-STREAMS::VECTOR-OUTPUT-STREAM {64F9644E}>))
42: (#<FUNCTION {26EDA1A4}> (#<CL-STORE:CL-STORE {264A80D8}> #<FLEXI-STREAMS::VECTOR-OUTPUT-STREAM {64F9644E}> "hello"))
43: (#<FUNCTION {3B0F29F3}> #<CL-STORE:CL-STORE {264A80D8}> #<FLEXI-STREAMS::VECTOR-OUTPUT-STREAM {64
Change History (18)
Milestone: |
→ 1.3.0
|
Version: |
→ 1.3.0-dev
|
Copied from http://article.gmane.org/gmane.editors.j.devel/5703
Narrowed the problem down to type declaration (which cl-store uses a
lot) & compilation. As an example:
(defun test (stream)
(flex:with-output-to-sequence (s)
If you evaluate test (C-x C-e), the second form works. If test is compiled,
(C-c C-c), then the second form fails. Some sort of type check error? The
flexi-streams *is* a stream:
(block a
=> (FLEXI-STREAMS::VECTOR-OUTPUT-STREAM T)