Ticket #5971 (closed defect: fixed)
[with patch, positive review] fix dumb error message when modding out by 0: Mod(10,0)
| Reported by: | was | Owned by: | somebody |
|---|---|---|---|
| Priority: | minor | Milestone: | sage-4.1 |
| Component: | basic arithmetic | Keywords: | |
| Cc: | Author(s): | Minh Van Nguyen | |
| Report Upstream: | Reviewer(s): | Karl-Dieter Crisman | |
| Merged in: | sage-4.1.alpha2 | Work issues: |
Description
When doing Mod(n,0), either there should be a useful error message, or one should get n back. The following is no good at all -- one shouldn't get an AttributeError?, which is surely due to a bug.
sage: a = Mod(10,0)
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
115 cdef IntegerMod_abstract x
--> 116 x = IntegerMod(integer_mod_ring.IntegerModRing(m), n)
117 if parent is None:
118 return x
/Users/wstein/build/sage-3.4.2.rc0/local/lib/python2.5/site-packages/sage/rings/integer_mod.so in sage.rings.integer_mod.IntegerMod (sage/rings/integer_mod.c:2730)()
132 cdef NativeIntStruct modulus
133 cdef Py_ssize_t res
--> 134 modulus = parent._pyx_order
135 if modulus.table is not None:
136 if PY_TYPE_CHECK(value, sage.rings.integer.Integer) or PY_TYPE_CHECK(value, int) or PY_TYPE_CHECK(value, long):
AttributeError: 'sage.rings.integer_ring.IntegerRing_class' object has no attribute '_pyx_order'
Attachments
Change History
Note: See
TracTickets for help on using
tickets.

