John Snow <js...@redhat.com> writes: > mypy isn't fond of allowing you to check for bool membership in a > collection of str elements. Guard this lookup for precisely when we were > given a name. > > Signed-off-by: John Snow <js...@redhat.com> > Reviewed-by: Eduardo Habkost <ehabk...@redhat.com> > Reviewed-by: Cleber Rosa <cr...@redhat.com> > --- > scripts/qapi/expr.py | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/scripts/qapi/expr.py b/scripts/qapi/expr.py > index 783282b53ce..138fab0711f 100644 > --- a/scripts/qapi/expr.py > +++ b/scripts/qapi/expr.py > @@ -173,7 +173,9 @@ def check_type(value, info, source, > raise QAPISemError(info, > "%s should be an object or type name" % source) > > - permit_upper = allow_dict in info.pragma.name_case_whitelist > + permit_upper = False > + if isinstance(allow_dict, str): > + permit_upper = allow_dict in info.pragma.name_case_whitelist > > # value is a dictionary, check that each member is okay > for (key, arg) in value.items():
Busy-work like this can make me doubt typing is worth the notational overhead. There must a less awkward way to plumb "upper case okay" through check_type() to check_name_is_str(). But we're typing what we have.