[pypy-commit] pypy object-dtype2: fix compile for __array_interface__ dictionary lookup
mattip
noreply at buildbot.pypy.org
Wed Apr 22 11:22:31 CEST 2015
Author: mattip <matti.picus at gmail.com>
Branch: object-dtype2
Changeset: r76864:1b847ed40e52
Date: 2015-04-20 19:58 +0300
http://bitbucket.org/pypy/pypy/changeset/1b847ed40e52/
Log: fix compile for __array_interface__ dictionary lookup
diff --git a/pypy/module/micronumpy/compile.py b/pypy/module/micronumpy/compile.py
--- a/pypy/module/micronumpy/compile.py
+++ b/pypy/module/micronumpy/compile.py
@@ -89,7 +89,8 @@
return self.wrap(len(w_obj.items))
def getattr(self, w_obj, w_attr):
- return StringObject(NonConstant('foo'))
+ assert isinstance(w_attr, StringObject)
+ return w_obj.getdictvalue(self, w_attr.v)
def isinstance_w(self, w_obj, w_tp):
try:
diff --git a/pypy/module/micronumpy/ctors.py b/pypy/module/micronumpy/ctors.py
--- a/pypy/module/micronumpy/ctors.py
+++ b/pypy/module/micronumpy/ctors.py
@@ -45,6 +45,9 @@
if e.match(space, space.w_AttributeError):
return None
raise
+ if w_interface is None:
+ # happens from compile.py
+ return None
version = space.int_w(space.finditem(w_interface, space.wrap("version")))
if version < 3:
raise oefmt(space.w_NotImplementedError,
More information about the pypy-commit
mailing list