stylewarning / hypergeometrica

Livin' like it's 1813 (or 1988).
BSD 3-Clause "New" or "Revised" License
30 stars 6 forks source link

TEST-MPZ-SIZE fails #25

Closed paulapatience closed 1 year ago

paulapatience commented 1 year ago

Running (asdf:test-system :hypergeometrica) results in the following exception:

The function
  #<STANDARD-GENERIC-FUNCTION HYPERGEOMETRICA::INTEGER-MPZ (1)>
requires at least 2 arguments.
   [Condition of type SB-INT:SIMPLE-PROGRAM-ERROR]

Restarts:
 0: [CONTINUE] Skip the rest of the test TEST-MPZ-SIZE and continue by returning (values)
 1: [RETEST] Rerun the test TEST-MPZ-SIZE
 2: [CONTINUE] Skip the rest of the test FIASCO-SUITES::HYPERGEOMETRICA-TESTS and continue by returning (values)
 3: [RETEST] Rerun the test FIASCO-SUITES::HYPERGEOMETRICA-TESTS
 4: [CONTINUE-WITHOUT-DEBUGGING] Turn off debugging for this test session and invoke the first CONTINUE restart
 5: [CONTINUE-WITHOUT-DEBUGGING-ERRORS] Do not stop at unexpected errors for the rest of this test session and continue by invoking the first CONTINUE restart
 --more--

Backtrace:
0: (SB-INT:%PROGRAM-ERROR "~@<The function ~2I~_~S ~I~_requires at least ~W argument~:P.~:>" #<STANDARD-GENERIC-FUNCTION HYPERGEOMETRICA::INTEGER-MPZ (1)> 2)
1: (SB-PCL::ERROR-NEED-AT-LEAST-N-ARGS #<STANDARD-GENERIC-FUNCTION HYPERGEOMETRICA::INTEGER-MPZ (1)> 2)
2: (SB-PCL::INITIAL-DFUN #<STANDARD-GENERIC-FUNCTION HYPERGEOMETRICA::INTEGER-MPZ (1)> (0))
3: ((LABELS TEST-MPZ-SIZE :IN TEST-MPZ-SIZE))
4: ((LABELS FIASCO::RUN-TEST-BODY :IN FIASCO::RUN-TEST-BODY-IN-HANDLERS))
5: (FIASCO::CALL-WITH-TEST-HANDLERS #<FUNCTION (LAMBDA NIL :IN FIASCO::RUN-TEST-BODY-IN-HANDLERS) {10077C93CB}>)
6: (FIASCO::PRETTY-RUN-TEST #<test TEST-MPZ-SIZE> #<FUNCTION (LABELS TEST-MPZ-SIZE :IN TEST-MPZ-SIZE) {538CB92B}>)
7: ((LABELS #:BODY-SYM0 :IN TEST-MPZ-SIZE))
8: (TEST-MPZ-SIZE)
9: ((LABELS FIASCO-SUITES::HYPERGEOMETRICA-TESTS :IN FIASCO-SUITES::HYPERGEOMETRICA-TESTS))
10: ((LABELS FIASCO::RUN-TEST-BODY :IN FIASCO::RUN-TEST-BODY-IN-HANDLERS))
11: (FIASCO::CALL-WITH-TEST-HANDLERS #<FUNCTION (LAMBDA NIL :IN FIASCO::RUN-TEST-BODY-IN-HANDLERS) {1003EC993B}>)
12: (FIASCO::PRETTY-RUN-TEST #<test FIASCO-SUITES::HYPERGEOMETRICA-TESTS :tests 22> #<FUNCTION (LABELS FIASCO-SUITES::HYPERGEOMETRICA-TESTS :IN FIASCO-SUITES::HYPERGEOMETRICA-TESTS) {538B267B}>)
13: ((LABELS #:BODY-SYM1 :IN FIASCO-SUITES::HYPERGEOMETRICA-TESTS))
14: (FIASCO-SUITES::HYPERGEOMETRICA-TESTS)
15: (RUN-SUITE-TESTS #<test FIASCO-SUITES::HYPERGEOMETRICA-TESTS :tests 22> :VERBOSE NIL :STREAM #<SB-SYS:FD-STREAM for "socket 127.0.0.1:36697, peer: 127.0.0.1:48318" {1001358393}> :INTERACTIVE T)
16: (RUN-TESTS :HYPERGEOMETRICA-TESTS :DESCRIBE-FAILURES T :VERBOSE NIL :STREAM #<SB-SYS:FD-STREAM for "socket 127.0.0.1:36697, peer: 127.0.0.1:48318" {1001358393}> :INTERACTIVE T)
17: (TEST-HYPERGEOMETRICA)
18: ((SB-PCL::EMF ASDF/ACTION:PERFORM) #<unused argument> #<unused argument> #<ASDF/LISP-ACTION:TEST-OP > #<ASDF/SYSTEM:SYSTEM "hypergeometrica/tests">)
19: ((LAMBDA NIL :IN ASDF/ACTION:CALL-WHILE-VISITING-ACTION))
--more--

I tried adding 'mpz/ram as the second argument in the INTEGER-MPZ calls in TEST-MPZ-SIZE, to no avail:

There is no applicable method for the generic function
  #<STANDARD-GENERIC-FUNCTION HYPERGEOMETRICA::INTEGER-MPZ (1)>
when called with arguments
  (0 MPZ/RAM).
   [Condition of type SB-PCL::NO-APPLICABLE-METHOD-ERROR]

Restarts:
 0: [RETRY] Retry calling the generic function.
 1: [CONTINUE] Skip the rest of the test TEST-MPZ-SIZE and continue by returning (values)
 2: [RETEST] Rerun the test TEST-MPZ-SIZE
 3: [CONTINUE] Skip the rest of the test FIASCO-SUITES::HYPERGEOMETRICA-TESTS and continue by returning (values)
 4: [RETEST] Rerun the test FIASCO-SUITES::HYPERGEOMETRICA-TESTS
 5: [CONTINUE-WITHOUT-DEBUGGING] Turn off debugging for this test session and invoke the first CONTINUE restart
 --more--

Backtrace:
0: ((:METHOD NO-APPLICABLE-METHOD (T)) #<STANDARD-GENERIC-FUNCTION HYPERGEOMETRICA::INTEGER-MPZ (1)> 0 MPZ/RAM) [fast-method]
1: (SB-PCL::CALL-NO-APPLICABLE-METHOD #<STANDARD-GENERIC-FUNCTION HYPERGEOMETRICA::INTEGER-MPZ (1)> (0 MPZ/RAM))
2: ((LABELS TEST-MPZ-SIZE :IN TEST-MPZ-SIZE))
3: ((LABELS FIASCO::RUN-TEST-BODY :IN FIASCO::RUN-TEST-BODY-IN-HANDLERS))
4: (FIASCO::CALL-WITH-TEST-HANDLERS #<FUNCTION (LAMBDA NIL :IN FIASCO::RUN-TEST-BODY-IN-HANDLERS) {100B00560B}>)
5: (FIASCO::PRETTY-RUN-TEST #<test TEST-MPZ-SIZE> #<FUNCTION (LABELS TEST-MPZ-SIZE :IN TEST-MPZ-SIZE) {5390762B}>)
6: ((LABELS #:BODY-SYM0 :IN TEST-MPZ-SIZE))
7: (TEST-MPZ-SIZE)
8: ((LABELS FIASCO-SUITES::HYPERGEOMETRICA-TESTS :IN FIASCO-SUITES::HYPERGEOMETRICA-TESTS))
9: ((LABELS FIASCO::RUN-TEST-BODY :IN FIASCO::RUN-TEST-BODY-IN-HANDLERS))
10: (FIASCO::CALL-WITH-TEST-HANDLERS #<FUNCTION (LAMBDA NIL :IN FIASCO::RUN-TEST-BODY-IN-HANDLERS) {10076F2F4B}>)
11: (FIASCO::PRETTY-RUN-TEST #<test FIASCO-SUITES::HYPERGEOMETRICA-TESTS :tests 22> #<FUNCTION (LABELS FIASCO-SUITES::HYPERGEOMETRICA-TESTS :IN FIASCO-SUITES::HYPERGEOMETRICA-TESTS) {538B267B}>)
12: ((LABELS #:BODY-SYM1 :IN FIASCO-SUITES::HYPERGEOMETRICA-TESTS))
13: (FIASCO-SUITES::HYPERGEOMETRICA-TESTS)
14: (RUN-SUITE-TESTS #<test FIASCO-SUITES::HYPERGEOMETRICA-TESTS :tests 22> :VERBOSE NIL :STREAM #<SB-SYS:FD-STREAM for "socket 127.0.0.1:36697, peer: 127.0.0.1:48318" {1001358393}> :INTERACTIVE T)
15: (RUN-TESTS :HYPERGEOMETRICA-TESTS :DESCRIBE-FAILURES T :VERBOSE NIL :STREAM #<SB-SYS:FD-STREAM for "socket 127.0.0.1:36697, peer: 127.0.0.1:48318" {1001358393}> :INTERACTIVE T)
16: (TEST-HYPERGEOMETRICA)
17: ((SB-PCL::EMF ASDF/ACTION:PERFORM) #<unused argument> #<unused argument> #<ASDF/LISP-ACTION:TEST-OP > #<ASDF/SYSTEM:SYSTEM "hypergeometrica/tests">)
18: ((LAMBDA NIL :IN ASDF/ACTION:CALL-WHILE-VISITING-ACTION))
19: ((:METHOD ASDF/ACTION:PERFORM-WITH-RESTARTS :AROUND (T T)) #<ASDF/LISP-ACTION:TEST-OP > #<ASDF/SYSTEM:SYSTEM "hypergeometrica/tests">) [fast-method]
--more--

I know basically nothing about this library, as I just discovered it, so perhaps the error is trivial, and my attempted fix ignorant. I may investigate later. I'm not sure if this error is related to #23.

stylewarning commented 1 year ago

Should be fixed now. Thanks for reporting!