[pypy-commit] pypy default: Use AnnotatorError in rpython.annotator.specialize
rlamy
noreply at buildbot.pypy.org
Sat Aug 31 14:53:46 CEST 2013
Author: Ronan Lamy <ronan.lamy at gmail.com>
Branch:
Changeset: r66713:15cae5e616c4
Date: 2013-08-31 13:52 +0100
http://bitbucket.org/pypy/pypy/changeset/15cae5e616c4/
Log: Use AnnotatorError in rpython.annotator.specialize
diff --git a/rpython/annotator/specialize.py b/rpython/annotator/specialize.py
--- a/rpython/annotator/specialize.py
+++ b/rpython/annotator/specialize.py
@@ -258,16 +258,17 @@
assert not s.can_be_None, "memo call: cannot mix None and PBCs"
for desc in s.descriptions:
if desc.pyobj is None:
- raise Exception("memo call with a class or PBC that has no "
- "corresponding Python object (%r)" % (desc,))
+ raise annmodel.AnnotatorError(
+ "memo call with a class or PBC that has no "
+ "corresponding Python object (%r)" % (desc,))
values.append(desc.pyobj)
elif isinstance(s, SomeImpossibleValue):
return s # we will probably get more possible args later
elif isinstance(s, SomeBool):
values = [False, True]
else:
- raise Exception("memo call: argument must be a class or a frozen "
- "PBC, got %r" % (s,))
+ raise annmodel.AnnotatorError("memo call: argument must be a class"
+ "or a frozen PBC, got %r" % (s,))
argvalues.append(values)
# the list of all possible tuples of arguments to give to the memo function
possiblevalues = cartesian_product(argvalues)
@@ -280,8 +281,8 @@
except KeyError:
func = funcdesc.pyobj
if func is None:
- raise Exception("memo call: no Python function object to call "
- "(%r)" % (funcdesc,))
+ raise annmodel.AnnotatorError("memo call: no Python function object"
+ "to call (%r)" % (funcdesc,))
def compute_one_result(args):
value = func(*args)
@@ -344,8 +345,8 @@
desc, = s.descriptions
key.append(desc)
else:
- raise Exception("specialize:arg(%d): argument not constant: %r"
- % (i, s))
+ raise annmodel.AnnotatorError("specialize:arg(%d): argument not "
+ "constant: %r" % (i, s))
key = tuple(key)
return maybe_star_args(funcdesc, key, args_s)
More information about the pypy-commit
mailing list