Skip to content

False positive with warn unreachable, Any, and None #20532

Description

@hauntsaninja
from typing import Any

def main(contents: Any, commit: str | None) -> None:
    if (
        contents.get("commit") == commit
        and (commit is not None or print("can_be_reached"))
    ):
        pass

main({"commit": None}, None)

mypy 1.19.1 with --warn-unreachable gives main.py:6: error: Right operand of "or" is never evaluated [unreachable]

Activity

  1. calm329 commented on Jan 6, 2026

    @calm329

    @hauntsaninja I've fixed the issue, could you check it please?

  2. calm329 commented on Jan 6, 2026

    @calm329

    @hauntsaninja Please let me know when you are available to review my pr

  3. added a commit that references this issue on Jan 27, 2026
    e64a84b
  4. FMorgan-111 commented on Jul 4, 2026

    @FMorgan-111
  5. FMorgan-111 commented on Jul 4, 2026

    @FMorgan-111
  6. FMorgan-111 commented on Jul 5, 2026

    @FMorgan-111
  7. FMorgan-111 commented on Jul 5, 2026

    @FMorgan-111
  8. FMorgan-111 commented on Jul 5, 2026

    @FMorgan-111
  9. FMorgan-111 commented on Jul 5, 2026

    @FMorgan-111
  10. FMorgan-111 commented on Jul 5, 2026

    @FMorgan-111
  11. FMorgan-111 commented on Jul 5, 2026

    @FMorgan-111
  12. FMorgan-111 commented on Jul 5, 2026

    @FMorgan-111
  13. FMorgan-111 commented on Jul 5, 2026

    @FMorgan-111
  14. FMorgan-111 commented on Jul 5, 2026

    @FMorgan-111
  15. FMorgan-111 commented on Jul 5, 2026

    @FMorgan-111
  16. FMorgan-111 commented on Jul 5, 2026

    @FMorgan-111
  17. FMorgan-111 commented on Jul 5, 2026

    @FMorgan-111
  18. FMorgan-111 commented on Jul 5, 2026

    @FMorgan-111
  19. FMorgan-111 commented on Jul 6, 2026

    @FMorgan-111
  20. FMorgan-111 commented on Jul 6, 2026

    @FMorgan-111
  21. FMorgan-111 commented on Jul 6, 2026

    @FMorgan-111
  22. FMorgan-111 commented on Jul 6, 2026

    @FMorgan-111
  23. FMorgan-111 commented on Jul 20, 2026

    @FMorgan-111

    RepoPilot v2 could not complete an automatic fix.

    Reason: Failed to read issue:

    Relevant files:
    None found

    Attempts:
    No patch attempts were made.

    Token usage: 0/50000

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 wrongtopic-reachabilityDetecting unreachable code

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions