Technically true, since you'll need to check the return type of `__eq__()`. But the following code doesn't trigger any error using `mypy test.py --check-untyped-defs`.
def foo():
x = 1
return x == 2
def bar(x: bool):
print(x)
def baz(x: int):
print(x)
if __name__ == '__main__':
bar(foo())
baz(foo())