leewz added the comment:

Fine grained? Do you mean that the error can't be distinguished from other such 
errors? Or that it's difficult to attach the message to DivisionError? I 
thought DivisionError was always about precision.

I looked up the error in libmpdec:
"This occurs and signals invalid-operation if the integer result of a 
divide-integer or remainder operation had too many digits (would be longer than 
precision). The result is [0,qNaN]." 
(http://speleotrove.com/decimal/daexcep.html)

Now I'm more confused. Though it mentions precision, it is talking about the 
*result's* precision being too large (something which shouldn't happen with 
Python's unbounded ints, right?), rather than being unable to give a sane 
answer due to not having *enough* digits. That's also what the 2.7 error is:
    decimal.InvalidOperation: quotient too large in //, % or divmod

I'm very much content with documenting it, but if possible, I'd like to 
understand whether this is an issue to take up with libmpdec.

P.S.: As a side-note to others, Python floats allows float%int even when 
precision isn't high enough, and seems to always returns 0.0 with no warning. 
So behavior is inconsistent, if that's important to anyone here.

----------

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue21227>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to