[pypy-commit] pypy default: import cffi/1e7ca6f81db8
arigo
noreply at buildbot.pypy.org
Sat May 30 14:11:18 CEST 2015
Author: Armin Rigo <arigo at tunes.org>
Branch:
Changeset: r77706:cab7b4e7e393
Date: 2015-05-30 14:11 +0200
http://bitbucket.org/pypy/pypy/changeset/cab7b4e7e393/
Log: import cffi/1e7ca6f81db8
diff --git a/lib_pypy/cffi/recompiler.py b/lib_pypy/cffi/recompiler.py
--- a/lib_pypy/cffi/recompiler.py
+++ b/lib_pypy/cffi/recompiler.py
@@ -1088,7 +1088,8 @@
self.cffi_types[index] = CffiOp(OP_PRIMITIVE, prim_index)
def _emit_bytecode_UnknownIntegerType(self, tp, index):
- s = '_cffi_prim_int(sizeof(%s), ((%s)-1) <= 0)' % (tp.name, tp.name)
+ s = '_cffi_prim_int(sizeof(%s), (((%s)-1) << 0) <= 0)' % (
+ tp.name, tp.name)
self.cffi_types[index] = CffiOp(OP_PRIMITIVE, s)
def _emit_bytecode_RawFunctionType(self, tp, index):
diff --git a/pypy/module/test_lib_pypy/cffi_tests/cffi1/test_recompiler.py b/pypy/module/test_lib_pypy/cffi_tests/cffi1/test_recompiler.py
--- a/pypy/module/test_lib_pypy/cffi_tests/cffi1/test_recompiler.py
+++ b/pypy/module/test_lib_pypy/cffi_tests/cffi1/test_recompiler.py
@@ -1,6 +1,6 @@
# Generated by pypy/tool/import_cffi.py
import sys, os, py
-from cffi import FFI, FFIError, VerificationError
+from cffi import FFI, VerificationError
from cffi import recompiler
from pypy.module.test_lib_pypy.cffi_tests.udir import udir
from pypy.module.test_lib_pypy.cffi_tests.support import u
@@ -971,10 +971,6 @@
assert lib.mu == -20
assert lib.nu == 20
-def test_unsupported_some_void_type():
- ffi = FFI()
- py.test.raises(FFIError, ffi.cdef, """typedef void... foo_t;""")
-
def test_some_float_type():
py.test.skip("later")
ffi = FFI()
diff --git a/pypy/module/test_lib_pypy/cffi_tests/cffi1/test_verify1.py b/pypy/module/test_lib_pypy/cffi_tests/cffi1/test_verify1.py
--- a/pypy/module/test_lib_pypy/cffi_tests/cffi1/test_verify1.py
+++ b/pypy/module/test_lib_pypy/cffi_tests/cffi1/test_verify1.py
@@ -1,6 +1,6 @@
# Generated by pypy/tool/import_cffi.py
import os, sys, math, py
-from cffi import FFI, VerificationError, VerificationMissing, model
+from cffi import FFI, FFIError, VerificationError, VerificationMissing, model
from cffi import recompiler
from pypy.module.test_lib_pypy.cffi_tests.support import *
import _cffi_backend
@@ -2230,3 +2230,10 @@
return 3 + 4
x = lib.InvokeFunction(add)
assert x == 7
+
+def test_unsupported_some_primitive_types():
+ ffi = FFI()
+ py.test.raises(FFIError, ffi.cdef, """typedef void... foo_t;""")
+ #
+ ffi.cdef("typedef int... foo_t;")
+ py.test.raises(VerificationError, ffi.verify, "typedef float foo_t;")
More information about the pypy-commit
mailing list