Skip to content

Exception while typechecking python3.4 program using asyncio.Queue.get #868

Closed

Description

@thomascellerier

Using the latest master from today mypy 0.2.0-dev.

Traceback (most recent call last):
  File "/usr/local/bin/mypy", line 184, in <module>
    main()
  File "/usr/local/bin/mypy", line 36, in main
    type_check_only(path, module, bin_dir, options)
  File "/usr/local/bin/mypy", line 80, in type_check_only
    python_path=options.python_path)
  File "/usr/local/lib/python3.4/dist-packages/mypy/build.py", line 160, in build
    result = manager.process(UnprocessedFile(info, program_text))
  File "/usr/local/lib/python3.4/dist-packages/mypy/build.py", line 337, in process
    next.process()
  File "/usr/local/lib/python3.4/dist-packages/mypy/build.py", line 786, in process
    self.type_checker().visit_file(self.tree, self.tree.path)
  File "/usr/local/lib/python3.4/dist-packages/mypy/checker.py", line 353, in visit_file
    self.accept(d)
  File "/usr/local/lib/python3.4/dist-packages/mypy/checker.py", line 360, in accept
    typ = node.accept(self)
  File "/usr/local/lib/python3.4/dist-packages/mypy/nodes.py", line 380, in accept
    return visitor.visit_decorator(self)
  File "/usr/local/lib/python3.4/dist-packages/mypy/checker.py", line 1646, in visit_decorator
    e.func.accept(self)
  File "/usr/local/lib/python3.4/dist-packages/mypy/nodes.py", line 349, in accept
    return visitor.visit_func_def(self)
  File "/usr/local/lib/python3.4/dist-packages/mypy/checker.py", line 417, in visit_func_def
    self.check_func_item(defn, name=defn.name())
  File "/usr/local/lib/python3.4/dist-packages/mypy/checker.py", line 450, in check_func_item
    self.check_func_def(defn, typ, name)
  File "/usr/local/lib/python3.4/dist-packages/mypy/checker.py", line 517, in check_func_def
    self.accept_in_frame(item.body)
  File "/usr/local/lib/python3.4/dist-packages/mypy/checker.py", line 373, in accept_in_frame
    answer = self.accept(node, type_context)
  File "/usr/local/lib/python3.4/dist-packages/mypy/checker.py", line 360, in accept
    typ = node.accept(self)
  File "/usr/local/lib/python3.4/dist-packages/mypy/nodes.py", line 493, in accept
    return visitor.visit_block(self)
  File "/usr/local/lib/python3.4/dist-packages/mypy/checker.py", line 907, in visit_block
    self.accept(s)
  File "/usr/local/lib/python3.4/dist-packages/mypy/checker.py", line 360, in accept
    typ = node.accept(self)
  File "/usr/local/lib/python3.4/dist-packages/mypy/nodes.py", line 532, in accept
    return visitor.visit_assignment_stmt(self)
  File "/usr/local/lib/python3.4/dist-packages/mypy/checker.py", line 916, in visit_assignment_stmt
    self.check_assignment(s.lvalues[-1], s.rvalue, s.type is None)
  File "/usr/local/lib/python3.4/dist-packages/mypy/checker.py", line 944, in check_assignment
    self.infer_variable_type(inferred, lvalue, self.accept(rvalue),
  File "/usr/local/lib/python3.4/dist-packages/mypy/checker.py", line 360, in accept
    typ = node.accept(self)
  File "/usr/local/lib/python3.4/dist-packages/mypy/nodes.py", line 944, in accept
    return visitor.visit_yield_from_expr(self)
  File "/usr/local/lib/python3.4/dist-packages/mypy/checker.py", line 1693, in visit_yield_from_expr
    if result_instance.type.fullname() == "asyncio.futures.Future":
AttributeError: 'AnyType' object has no attribute 'type'

Here is a minimal program to reproduce:

import asyncio

@asyncio.coroutine
def example_coro():
    q = asyncio.Queue()
    msg = yield from q.get()

if __name__ == '__main__':
    loop = asyncio.get_event_loop()
    loop.run_until_complete(example_coro())

Activity

  1. changed the title [-]Exception while typechecking python3.4 program using asyncio[/-] [+]Exception while typechecking python3.4 program using asyncio.Queue.get[/+] on Sep 3, 2015
  2. added a commit that references this issue on Sep 10, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugmypy got something wrong

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions