Skip to content

Commit e8aa50b

Browse files
hauntsaninjacdce8p
authored andcommitted
Revert sum literal integer change (python#13961)
This is allegedly causing large performance problems, see 13821 typeshed/8231 had zero hits on mypy_primer, so it's not the worst thing to undo. Patching this in typeshed also feels weird, since there's a more general soundness issue. If a typevar has a bound or constraint, we might not want to solve it to a Literal. If we can confirm the performance regression or fix the unsoundness within mypy, I might pursue upstreaming this in typeshed. (Reminder: add this to the sync_typeshed script once merged)
1 parent 84f5fb4 commit e8aa50b

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

mypy/typeshed/stdlib/builtins.pyi

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1782,7 +1782,7 @@ _SupportsSumNoDefaultT = TypeVar("_SupportsSumNoDefaultT", bound=_SupportsSumWit
17821782
# without creating many false-positive errors (see #7578).
17831783
# Instead, we special-case the most common examples of this: bool and literal integers.
17841784
@overload
1785-
def sum(iterable: Iterable[bool | _LiteralInteger], /, start: int = 0) -> int: ...
1785+
def sum(iterable: Iterable[bool], /, start: int = 0) -> int: ...
17861786
@overload
17871787
def sum(iterable: Iterable[_SupportsSumNoDefaultT], /) -> _SupportsSumNoDefaultT | Literal[0]: ...
17881788
@overload

0 commit comments

Comments
 (0)