Author: Ronan Lamy <[email protected]>
Branch: py3.5
Changeset: r93454:774bffb126ce
Date: 2017-12-17 22:14 +0000
http://bitbucket.org/pypy/pypy/changeset/774bffb126ce/
Log: hg merge default
diff --git a/pypy/module/cpyext/pyerrors.py b/pypy/module/cpyext/pyerrors.py
--- a/pypy/module/cpyext/pyerrors.py
+++ b/pypy/module/cpyext/pyerrors.py
@@ -154,7 +154,7 @@
error indicator."""
raise oefmt(space.w_TypeError, "bad argument type for built-in operation")
-@cpython_api([], lltype.Void)
+@cpython_api([], lltype.Void, error=None)
def PyErr_BadInternalCall(space):
raise oefmt(space.w_SystemError, "Bad internal call!")
diff --git a/pypy/module/cpyext/test/test_pyerrors.py
b/pypy/module/cpyext/test/test_pyerrors.py
--- a/pypy/module/cpyext/test/test_pyerrors.py
+++ b/pypy/module/cpyext/test/test_pyerrors.py
@@ -463,3 +463,15 @@
])
res = module.test(StopIteration("foo!"))
assert res == "foo!"
+
+ def test_PyErr_BadInternalCall(self):
+ # NB. it only seemed to fail when run with '-s'... but I think
+ # that it always printed stuff to stderr
+ module = self.import_extension('foo', [
+ ("oops", "METH_NOARGS",
+ r'''
+ PyErr_BadInternalCall();
+ return NULL;
+ '''),
+ ])
+ raises(SystemError, module.oops)
diff --git a/pypy/module/cpyext/test/test_tupleobject.py
b/pypy/module/cpyext/test/test_tupleobject.py
--- a/pypy/module/cpyext/test/test_tupleobject.py
+++ b/pypy/module/cpyext/test/test_tupleobject.py
@@ -1,6 +1,7 @@
import py
-from pypy.module.cpyext.pyobject import PyObject, PyObjectP, make_ref, from_ref
+from pypy.module.cpyext.pyobject import (
+ PyObject, PyObjectP, make_ref, from_ref, incref)
from pypy.module.cpyext.test.test_api import BaseApiTest, raises_w
from pypy.module.cpyext.test.test_cpyext import AppTestCpythonExtensionBase
from rpython.rtyper.lltypesystem import rffi, lltype
@@ -14,6 +15,7 @@
def test_tupleobject(self, space):
assert not PyTuple_Check(space, space.w_None)
with raises_w(space, SystemError):
+ incref(space, space.w_None)
PyTuple_SetItem(space, space.w_None, 0, space.w_None)
atuple = space.newtuple([space.wrap(0), space.wrap(1),
space.wrap('yay')])
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit