@@ -98,7 +98,7 @@ from sage.rings.polynomial.multi_polynomial_sequence import PolynomialSequence_g
9898from sage.libs.singular.decl cimport *
9999from sage.libs.singular.option import opt_ctx
100100from sage.libs.singular.polynomial cimport singular_vector_maximal_component
101- from sage.libs.singular.singular cimport sa2si, si2sa, si2sa_intvec
101+ from sage.libs.singular.singular cimport sa2si, si2sa, si2sa_intvec, si2sa_bigintvec
102102from sage.libs.singular.singular import error_messages
103103
104104from sage.interfaces.singular import get_docstring
@@ -954,6 +954,8 @@ cdef class Converter(SageObject):
954954 return si2sa(< number * > to_convert.data, self ._singular_ring, self ._sage_ring.base_ring())
955955 elif rtyp == INTVEC_CMD:
956956 return si2sa_intvec(< intvec * > to_convert.data)
957+ elif rtyp == BIGINTVEC_CMD:
958+ return si2sa_bigintvec(< bigintmat * > to_convert.data)
957959 elif rtyp == STRING_CMD:
958960 # TODO: Need to determine what kind of data can be returned by a
959961 # STRING_CMD--is it just ASCII strings or can it be an arbitrary
@@ -1048,6 +1050,17 @@ cdef class LibraryCallHandler(BaseCallHandler):
10481050 """
10491051 return False
10501052
1053+ # mapping int --> string for function arity
1054+ arity_dict = {
1055+ CMD_1: " CMD_1" ,
1056+ CMD_2: " CMD_2" ,
1057+ CMD_3: " CMD_3" ,
1058+ CMD_12: " CMD_12" ,
1059+ CMD_13: " CMD_13" ,
1060+ CMD_23: " CMD_23" ,
1061+ CMD_123: " CMD_123" ,
1062+ CMD_M: " CMD_M"
1063+ }
10511064
10521065cdef class KernelCallHandler(BaseCallHandler):
10531066 """
@@ -1125,8 +1138,9 @@ cdef class KernelCallHandler(BaseCallHandler):
11251138
11261139 errorreported += 1
11271140 error_messages.append(
1128- " Wrong number of arguments (got {} arguments, arity code is {})"
1129- .format(number_of_arguments, self .arity))
1141+ " Wrong number of arguments (got {} arguments, arity is {})"
1142+ .format(number_of_arguments,
1143+ arity_dict.get(self .arity) or self .arity))
11301144 return NULL
11311145
11321146 cdef bint free_res(self ) noexcept:
@@ -1231,7 +1245,7 @@ cdef class SingularFunction(SageObject):
12311245 Traceback (most recent call last):
12321246 ...
12331247 RuntimeError: error in Singular function call 'size':
1234- Wrong number of arguments (got 2 arguments, arity code is 302 )
1248+ Wrong number of arguments (got 2 arguments, arity is CMD_1 )
12351249 sage: size('foobar', ring=P)
12361250 6
12371251
@@ -1634,17 +1648,17 @@ def singular_function(name):
16341648 Traceback (most recent call last):
16351649 ...
16361650 RuntimeError: error in Singular function call 'factorize':
1637- Wrong number of arguments (got 0 arguments, arity code is 305 )
1651+ Wrong number of arguments (got 0 arguments, arity is CMD_12 )
16381652 sage: factorize(f, 1, 2)
16391653 Traceback (most recent call last):
16401654 ...
16411655 RuntimeError: error in Singular function call 'factorize':
1642- Wrong number of arguments (got 3 arguments, arity code is 305 )
1656+ Wrong number of arguments (got 3 arguments, arity is CMD_12 )
16431657 sage: factorize(f, 1, 2, 3)
16441658 Traceback (most recent call last):
16451659 ...
16461660 RuntimeError: error in Singular function call 'factorize':
1647- Wrong number of arguments (got 4 arguments, arity code is 305 )
1661+ Wrong number of arguments (got 4 arguments, arity is CMD_12 )
16481662
16491663 The Singular function ``list`` can be called with any number of
16501664 arguments::
0 commit comments