Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
TASTE
uPython-mirror
Commits
4c02e542
Commit
4c02e542
authored
Oct 01, 2015
by
Damien George
Browse files
py/mpz: Raise NotImplError instead of failing assertion.
parent
5f3c3ec5
Changes
3
Hide whitespace changes
Inline
Side-by-side
py/mpz.c
View file @
4c02e542
...
...
@@ -29,6 +29,9 @@
#include "py/mpz.h"
// this is only needed for mp_not_implemented, which should eventually be removed
#include "py/runtime.h"
#if MICROPY_LONGINT_IMPL == MICROPY_LONGINT_IMPL_MPZ
#define DIG_SIZE (MPZ_DIG_SIZE)
...
...
@@ -1108,7 +1111,7 @@ void mpz_and_inpl(mpz_t *dest, const mpz_t *lhs, const mpz_t *rhs) {
dest
->
neg
=
0
;
}
else
{
// TODO both args are negative
assert
(
0
);
mp_not_implemented
(
"bignum and with negative args"
);
}
}
else
{
// args have different sign
...
...
@@ -1141,7 +1144,7 @@ void mpz_or_inpl(mpz_t *dest, const mpz_t *lhs, const mpz_t *rhs) {
}
else
{
mpz_need_dig
(
dest
,
lhs
->
len
);
// TODO
assert
(
0
);
mp_not_implemented
(
"bignum or with negative args"
);
// dest->len = mpn_or_neg(dest->dig, lhs->dig, lhs->len, rhs->dig, rhs->len);
}
...
...
@@ -1164,7 +1167,7 @@ void mpz_xor_inpl(mpz_t *dest, const mpz_t *lhs, const mpz_t *rhs) {
}
else
{
mpz_need_dig
(
dest
,
lhs
->
len
);
// TODO
assert
(
0
);
mp_not_implemented
(
"bignum xor with negative args"
);
// dest->len = mpn_xor_neg(dest->dig, lhs->dig, lhs->len, rhs->dig, rhs->len);
}
...
...
tests/misc/non_compliant.py
View file @
4c02e542
...
...
@@ -69,3 +69,21 @@ try:
b
'123'
[
0
:
3
:
2
]
except
NotImplementedError
:
print
(
'NotImplementedError'
)
# mpz and with both args negative
try
:
-
(
1
<<
70
)
&
-
2
except
NotImplementedError
:
print
(
'NotImplementedError'
)
# mpz or with args opposite sign
try
:
-
(
1
<<
70
)
|
2
except
NotImplementedError
:
print
(
'NotImplementedError'
)
# mpz xor with args opposite sign
try
:
-
(
1
<<
70
)
^
2
except
NotImplementedError
:
print
(
'NotImplementedError'
)
tests/misc/non_compliant.py.exp
View file @
4c02e542
...
...
@@ -9,3 +9,6 @@ NotImplementedError
NotImplementedError
NotImplementedError
NotImplementedError
NotImplementedError
NotImplementedError
NotImplementedError
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment