On Mar 15, 2010, at 4:27 PM, Robert Miller wrote:

On Mon, Mar 15, 2010 at 3:59 PM, Robert Miller <[email protected]> wrote:
On Mon, Mar 15, 2010 at 3:47 PM, Robert Miller <[email protected]> wrote:
Thanks for the tip, I'll keep digging!

I believe the problem is in M._mod_int(p):

Is this a problem with __new__ versus __cinit__? In _mod_int, the
result is constructed like this:

       res = Matrix_modn_sparse.__new__(Matrix_modn_sparse,
matrix_space.MatrixSpace(
           IntegerModRing(p), self._nrows, self._ncols,
sparse=False), None, None, None)

However, Matrix_modn_sparse only has __init__ and __cinit__ defined. I
can't even figure out which __new__ is getting called here, but it's
not setting the parent properly.

In Cython __new__ and __cinit__ are two different names for the same thing (with __new__ being the deprecated one).

- Robert

--
To post to this group, send an email to [email protected]
To unsubscribe from this group, send an email to 
[email protected]
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org

Reply via email to