This is obscure: If we test the type on a local copy instead of the
stored state AFTER the assignment, mypy does not constrain the type of
the copy. If we test on the stored state, it works out fine.
Corrects this warning:
qapi/schema.py:887: error: "QAPISchemaType" has no attribute "element_type"
Signed-off-by: John Snow <jsnow@redhat.com>
---
scripts/qapi/schema.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/scripts/qapi/schema.py b/scripts/qapi/schema.py
index 943f234ee2..09c7ceab41 100644
--- a/scripts/qapi/schema.py
+++ b/scripts/qapi/schema.py
@@ -764,7 +764,7 @@ def check(self, schema):
self._ret_type_name, self.info, "command's 'returns'")
if self.name not in self.info.pragma.returns_whitelist:
typ = self.ret_type
- if isinstance(typ, QAPISchemaArrayType):
+ if isinstance(self.ret_type, QAPISchemaArrayType):
typ = self.ret_type.element_type
assert typ
if not isinstance(typ, QAPISchemaObjectType):
--
2.26.2