Author: Armin Rigo <[email protected]>
Branch: kill-someobject
Changeset: r58062:be3ce3c9720d
Date: 2012-10-12 17:05 +0200
http://bitbucket.org/pypy/pypy/changeset/be3ce3c9720d/
Log: Fix for SomeChar in enforceargs()
diff --git a/pypy/rlib/objectmodel.py b/pypy/rlib/objectmodel.py
--- a/pypy/rlib/objectmodel.py
+++ b/pypy/rlib/objectmodel.py
@@ -149,7 +149,7 @@
else:
return type(arg)
def typecheck(*args):
- from pypy.annotation.model import SomeList, SomeDict
+ from pypy.annotation.model import SomeList, SomeDict, SomeChar
for i, (expected_type, arg) in enumerate(zip(types, args)):
if expected_type is None:
continue
@@ -160,6 +160,9 @@
continue
if isinstance(s_expected, SomeDict) and arg == {}:
continue
+ if isinstance(s_expected, SomeChar) and (
+ isinstance(arg, str) and len(arg) == 1): # a char
+ continue
#
s_argtype = get_annotation(get_type_descr_of_argument(arg))
if not s_expected.contains(s_argtype):
_______________________________________________
pypy-commit mailing list
[email protected]
http://mail.python.org/mailman/listinfo/pypy-commit