Cleavir
Cleavir copied to clipboard
cleavir-cst-to-ast-test error: CLEAVIR-ENVIRONMENT:FUNCTION-INFO takes 3 arguments
Loading cleavir-cst-to-ast-test fails with:
; wrote /gnu/store/f389wfqj9scbzxggdy93iiiys24nl4ca-sbcl-cleavir-0.0.0-1.7a2f814/lib/common-lisp/sbcl/cleavir/CST-to-AST/Test/environment-tmpP264WQ6O.fasl
; compilation finished in 0:00:00.008
Unhandled SB-PCL::FIND-METHOD-LENGTH-MISMATCH in thread #<SB-THREAD:THREAD "main thread" RUNNING
{10021A0073}>:
The generic function
#<STANDARD-GENERIC-FUNCTION CLEAVIR-ENVIRONMENT:FUNCTION-INFO (2)> takes 3
required arguments; was asked to find a method with specializers
(ENVIRONMENT T)
See also:
The ANSI Standard, Function FIND-METHOD
Backtrace for: #<SB-THREAD:THREAD "main thread" RUNNING {10021A0073}>
0: (SB-DEBUG::DEBUGGER-DISABLED-HOOK #<SB-PCL::FIND-METHOD-LENGTH-MISMATCH "~@<The generic function ~S takes ~D required argument~:P; was asked to find a method with specializers ~:S~@:>" {100F9DC7E3}> #<unused argument> :QUIT T)
1: (SB-DEBUG::RUN-HOOK SB-EXT:*INVOKE-DEBUGGER-HOOK* #<SB-PCL::FIND-METHOD-LENGTH-MISMATCH "~@<The generic function ~S takes ~D required argument~:P; was asked to find a method with specializers ~:S~@:>" {100F9DC7E3}>)
2: (INVOKE-DEBUGGER #<SB-PCL::FIND-METHOD-LENGTH-MISMATCH "~@<The generic function ~S takes ~D required argument~:P; was asked to find a method with specializers ~:S~@:>" {100F9DC7E3}>)
3: (ERROR SB-PCL::FIND-METHOD-LENGTH-MISMATCH :FORMAT-CONTROL "~@<The generic function ~S takes ~D required argument~:P; was asked to find a method with specializers ~:S~@:>" :FORMAT-ARGUMENTS (#<STANDARD-GENERIC-FUNCTION CLEAVIR-ENVIRONMENT:FUNCTION-INFO (2)> 3 (ENVIRONMENT T)))
4: ((FLET SB-THREAD::RECURSIVE-SYSTEM-LOCK-THUNK :IN SB-PCL::REAL-GET-METHOD))
5: ((FLET "WITHOUT-INTERRUPTS-BODY-22" :IN SB-THREAD::CALL-WITH-RECURSIVE-SYSTEM-LOCK))
6: (SB-THREAD::CALL-WITH-RECURSIVE-SYSTEM-LOCK #<FUNCTION (FLET SB-THREAD::RECURSIVE-SYSTEM-LOCK-THUNK :IN SB-PCL::REAL-GET-METHOD) {7FFFF74364BB}> #<SB-THREAD:MUTEX "GF lock" taken owner=main thread>)
7: (SB-PCL::REAL-GET-METHOD #<STANDARD-GENERIC-FUNCTION CLEAVIR-ENVIRONMENT:FUNCTION-INFO (2)> NIL (#<STANDARD-CLASS CLEAVIR-CST-TO-AST-TEST::ENVIRONMENT> #<SB-PCL:SYSTEM-CLASS COMMON-LISP:T>) NIL T)
8: (SB-PCL::LOAD-DEFMETHOD-INTERNAL STANDARD-METHOD CLEAVIR-ENVIRONMENT:FUNCTION-INFO NIL (#<STANDARD-CLASS CLEAVIR-CST-TO-AST-TEST::ENVIRONMENT> #<SB-PCL:SYSTEM-CLASS COMMON-LISP:T>) (ENVIRONMENT FUNCTION-NAME) (:FUNCTION #<%METHOD-FUNCTION (LAMBDA (SB-PCL::METHOD-ARGS SB-PCL::NEXT-METHODS) :IN SB-PCL::METHOD-FUNCTION-FROM-FAST-FUNCTION) {100F9DC55B}> SB-PCL::PLIST (:ARG-INFO (2)) SB-PCL::SIMPLE-NEXT-METHOD-CALL T) #S(SB-C:DEFINITION-SOURCE-LOCATION :NAMESTRING "/gnu/store/f389wfqj9scbzxggdy93iiiys24nl4ca-sbcl-cleavir-0.0.0-1.7a2f814/share/common-lisp/sbcl/cleavir/CST-to-AST/Test/environment.lisp" :INDICES 131073))
9: ((SB-C::TOP-LEVEL-FORM (SB-PCL::LOAD-DEFMETHOD (QUOTE STANDARD-METHOD) (QUOTE CLEAVIR-ENVIRONMENT:FUNCTION-INFO) (QUOTE NIL) (LIST (FIND-CLASS (QUOTE ENVIRONMENT)) (FIND-CLASS (QUOTE T))) (QUOTE (ENVIRONMENT FUNCTION-NAME)) (LIST* :FUNCTION (LET* (#1=# #1#) (SETF #1# #1#) SB-PCL::MF) (QUOTE (SB-PCL::PLIST #1# SB-PCL::SIMPLE-NEXT-METHOD-CALL T))) (SB-C:SOURCE-LOCATION)))) [toplevel]
10: (SB-FASL::LOAD-FASL-GROUP #S(SB-FASL::FASL-INPUT :STREAM #<SB-SYS:FD-STREAM for "file /gnu/store/f389wfqj9scbzxggdy93iiiys24nl4ca-sbcl-cleavir-0.0.0-1.7a2f814/lib/common-lisp/sbcl/cleavir/CST-to-AST/Test/environment.fasl" {100F9D2FF3}> :TABLE #(329 #1="/gnu/store/f389wfqj9scbzxggdy93iiiys24nl4ca-sbcl-cleavir-0.0.0-1.7a2f814/share/common-lisp/sbcl/cleavir/CST-to-AST/Test/environment.lisp" #<PACKAGE "SB-C"> SB-C::TOP-LEVEL-FORM SETQ *PACKAGE* #<PACKAGE "SB-INT"> SB-INT:FIND-UNDELETED-PACKAGE-OR-LOSE #2="CLEAVIR-CST-TO-AST-TEST" #3=(SB-INT:FIND-UNDELETED-PACKAGE-OR-LOSE #2#) #4=(SETQ *PACKAGE* #3#) (SB-C::TOP-LEVEL-FORM #4#) ...) :STACK #(0 #<FUNCTION (SB-C::TOP-LEVEL-FORM (SB-PCL::LOAD-DEFMETHOD (QUOTE STANDARD-METHOD) (QUOTE CLEAVIR-ENVIRONMENT:FUNCTION-INFO) (QUOTE NIL) (LIST # #) (QUOTE #) (LIST* :FUNCTION # #) (SB-C:SOURCE-LOCATION))) {100D41773B}> NIL NIL (SB-INT:SFUNCTION NIL NULL) #<SB-KERNEL:FDEFN SB-PCL::%MAKE-METHOD-FUNCTION> #<SB-KERNEL:FDEFN SB-PCL::METHOD-FUNCTION-FROM-FAST-FUNCTION> #<SB-KERNEL:FDEFN SB-PCL::LOAD-DEFMETHOD> #<SB-KERNEL:FDEFN SB-PCL::FIND-CLASS-FROM-CELL> #<SB-KERNEL::CLASSOID-CELL ENVIRONMENT> #<SB-KERNEL::CLASSOID-CELL T> (:ARG-INFO (2)) ...) :NAME-BUFFER #("\0" "CALL-WITH-VARIABLE-BOUNDT-FUNCTION") :PRINT NIL :PARTIAL-SOURCE-INFO #S(SB-C::DEBUG-SOURCE :NAMESTRING #1# :CREATED 2208988800 :START-POSITIONS NIL :PLIST NIL)))
11: ((LAMBDA NIL :IN SB-FASL::LOAD-AS-FASL))
12: (SB-IMPL::CALL-WITH-LOADER-PACKAGE-NAMES #<FUNCTION (LAMBDA NIL :IN SB-FASL::LOAD-AS-FASL) {100F9D682B}>)
13: (SB-FASL::LOAD-AS-FASL #<SB-SYS:FD-STREAM for "file /gnu/store/f389wfqj9scbzxggdy93iiiys24nl4ca-sbcl-cleavir-0.0.0-1.7a2f814/lib/common-lisp/sbcl/cleavir/CST-to-AST/Test/environment.fasl" {100F9D2FF3}> NIL NIL)
14: ((LABELS SB-FASL::LOAD-STREAM-1 :IN LOAD) #<SB-SYS:FD-STREAM for "file /gnu/store/f389wfqj9scbzxggdy93iiiys24nl4ca-sbcl-cleavir-0.0.0-1.7a2f814/lib/common-lisp/sbcl/cleavir/CST-to-AST/Test/environment.fasl" {100F9D2FF3}> T)
15: (SB-FASL::CALL-WITH-LOAD-BINDINGS #<FUNCTION (LABELS SB-FASL::LOAD-STREAM-1 :IN LOAD) {7FFFF743695B}> #<SB-SYS:FD-STREAM for "file /gnu/store/f389wfqj9scbzxggdy93iiiys24nl4ca-sbcl-cleavir-0.0.0-1.7a2f814/lib/common-lisp/sbcl/cleavir/CST-to-AST/Test/environment.fasl" {100F9D2FF3}> T #<SB-SYS:FD-STREAM for "file /gnu/store/f389wfqj9scbzxggdy93iiiys24nl4ca-sbcl-cleavir-0.0.0-1.7a2f814/lib/common-lisp/sbcl/cleavir/CST-to-AST/Test/environment.fasl" {100F9D2FF3}>)
16: (LOAD #P"/gnu/store/f389wfqj9scbzxggdy93iiiys24nl4ca-sbcl-cleavir-0.0.0-1.7a2f814/lib/common-lisp/sbcl/cleavir/CST-to-AST/Test/environment.fasl" :VERBOSE NIL :PRINT NIL :IF-DOES-NOT-EXIST :ERROR :EXTERNAL-FORMAT :DEFAULT)
17: (UIOP/UTILITY:CALL-WITH-MUFFLED-CONDITIONS #<FUNCTION (LAMBDA NIL :IN UIOP/LISP-BUILD:LOAD*) {100F9D2A4B}> ("Overwriting already existing readtable ~S." #(#:FINALIZERS-OFF-WARNING :ASDF-FINALIZERS)))
18: ((SB-PCL::EMF ASDF/ACTION:PERFORM) #<unused argument> #<unused argument> #<ASDF/LISP-ACTION:LOAD-OP > #<ASDF/LISP-ACTION:CL-SOURCE-FILE "cleavir-cst-to-ast-test" "environment">)
19: ((LAMBDA NIL :IN ASDF/ACTION:CALL-WHILE-VISITING-ACTION))
20: ((:METHOD ASDF/ACTION:PERFORM-WITH-RESTARTS (ASDF/LISP-ACTION:LOAD-OP ASDF/LISP-ACTION:CL-SOURCE-FILE)) #<ASDF/LISP-ACTION:LOAD-OP > #<ASDF/LISP-ACTION:CL-SOURCE-FILE "cleavir-cst-to-ast-test" "environment">) [fast-method]
21: ((:METHOD ASDF/ACTION:PERFORM-WITH-RESTARTS :AROUND (T T)) #<ASDF/LISP-ACTION:LOAD-OP > #<ASDF/LISP-ACTION:CL-SOURCE-FILE "cleavir-cst-to-ast-test" "environment">) [fast-method]
22: ((:METHOD ASDF/PLAN:PERFORM-PLAN (T)) #<ASDF/PLAN:SEQUENTIAL-PLAN {100F238B03}>) [fast-method]
23: ((FLET SB-C::WITH-IT :IN SB-C::%WITH-COMPILATION-UNIT))
24: ((:METHOD ASDF/PLAN:PERFORM-PLAN :AROUND (T)) #<ASDF/PLAN:SEQUENTIAL-PLAN {100F238B03}>) [fast-method]
25: ((:METHOD ASDF/OPERATE:OPERATE (ASDF/OPERATION:OPERATION ASDF/COMPONENT:COMPONENT)) #<ASDF/LISP-ACTION:LOAD-OP > #<ASDF/SYSTEM:SYSTEM "cleavir-cst-to-ast-test"> :PLAN-CLASS NIL :PLAN-OPTIONS NIL) [fast-method]
26: ((SB-PCL::EMF ASDF/OPERATE:OPERATE) #<unused argument> #<unused argument> #<ASDF/LISP-ACTION:LOAD-OP > #<ASDF/SYSTEM:SYSTEM "cleavir-cst-to-ast-test">)
27: ((LAMBDA NIL :IN ASDF/OPERATE:OPERATE))
28: ((:METHOD ASDF/OPERATE:OPERATE :AROUND (T T)) #<ASDF/LISP-ACTION:LOAD-OP > #<ASDF/SYSTEM:SYSTEM "cleavir-cst-to-ast-test">) [fast-method]
29: ((SB-PCL::EMF ASDF/OPERATE:OPERATE) #<unused argument> #<unused argument> ASDF/LISP-ACTION:LOAD-OP "cleavir-cst-to-ast-test")
30: ((LAMBDA NIL :IN ASDF/OPERATE:OPERATE))
31: ((:METHOD ASDF/OPERATE:OPERATE :AROUND (T T)) ASDF/LISP-ACTION:LOAD-OP "cleavir-cst-to-ast-test") [fast-method]
32: (ASDF/SESSION:CALL-WITH-ASDF-SESSION #<FUNCTION (LAMBDA NIL :IN ASDF/OPERATE:OPERATE) {100F1D3B5B}> :OVERRIDE T :KEY NIL :OVERRIDE-CACHE T :OVERRIDE-FORCING NIL)
33: ((LAMBDA NIL :IN ASDF/OPERATE:OPERATE))
34: (ASDF/SESSION:CALL-WITH-ASDF-SESSION #<FUNCTION (LAMBDA NIL :IN ASDF/OPERATE:OPERATE) {100F1D1E8B}> :OVERRIDE NIL :KEY NIL :OVERRIDE-CACHE NIL :OVERRIDE-FORCING NIL)
35: ((:METHOD ASDF/OPERATE:OPERATE :AROUND (T T)) ASDF/LISP-ACTION:LOAD-OP "cleavir-cst-to-ast-test") [fast-method]
36: (ASDF/OPERATE:LOAD-SYSTEM "cleavir-cst-to-ast-test")
37: (SB-INT:SIMPLE-EVAL-IN-LEXENV (ASDF/OPERATE:LOAD-SYSTEM "cleavir-cst-to-ast-test") #<NULL-LEXENV>)
38: (EVAL (ASDF/OPERATE:LOAD-SYSTEM "cleavir-cst-to-ast-test"))
39: (SB-IMPL::PROCESS-EVAL/LOAD-OPTIONS ((:EVAL . "(require :asdf)") (:EVAL . #<(SIMPLE-ARRAY CHARACTER (256)) (asdf:initialize-source-registry (list :source-registry (list :tree (uiop:ensure-pathname "/gnu/store/f389wfqj9scbzxggdy93iiiys24nl4ca-sbcl-cleavir-0.0.0-1.7a2f814/share/common-lisp/sbcl/cleavir" :tru... {10024ED57F}>) (:EVAL . "(asdf:load-system \"cleavir-ast-to-bir\")") (:EVAL . "(asdf:load-system \"cleavir-ast-to-source\")") (:EVAL . "(asdf:load-system \"cleavir-ast-transformations\")") (:EVAL . "(asdf:load-system \"cleavir-abstract-interpreter\")") (:EVAL . "(asdf:load-system \"cleavir-ast-visualizer\")") (:EVAL . "(asdf:load-system \"cleavir-ast\")") (:EVAL . "(asdf:load-system \"cleavir-attributes\")") (:EVAL . "(asdf:load-system \"cleavir-bir-to-cl\")") (:EVAL . "(asdf:load-system \"cleavir-bir-transformations\")") (:EVAL . "(asdf:load-system \"cleavir-bir-visualizer\")") ...))
40: (SB-IMPL::TOPLEVEL-INIT)
41: ((FLET SB-UNIX::BODY :IN SB-IMPL::START-LISP))
42: ((FLET "WITHOUT-INTERRUPTS-BODY-3" :IN SB-IMPL::START-LISP))
43: (SB-IMPL::%START-LISP)
The test is obsolete. I can fix it when I have time.
On further review, the tests are really obsolete, and in fact the test system definition hasn't actually loaded the tests since last year. The AST format has not been stable. I'm not sure how much sense it makes to test CST-to-AST in isolation at all. I'll see if I can think of some better way to test.