Type[GenericSubclass].__new__ resolves to GenericAlias.__new__
- Dominant language
- Rust
- Stars
- 7k
- Forks
- 516
- PR merge metrics
- No merged PRs in 30d
Description
### Describe the Bug
Minimal repro:
```python
from typing import TypeVar, Any
_T = TypeVar("_T")
class OrderingList(list[_T]):
"""A list that maintains ordering metadata."""
ordering_attr: str = "position"
def reconstitute(
cls: type[OrderingList[_T]], dict_: dict[str, Any], items: list[_T]
) -> OrderingList[_T]:
"""Unpickle an OrderingList instance."""
# pyrefly: Missing positional arguments `origin`, `args`
# in function `types.GenericAlias.__new__`
obj = cls.__new__(cls)
obj.__dict__.update(dict_)
list.extend(obj, items)
return obj
```
No other type checker treats this as an error.
### Sandbox Link
https://pyrefly.org/sandbox/?project=N4IgZglgNgpgziAXKOBDAdgEwEYHsAeAdAA4CeS4ATrgLYAEALqcROgOZ0Q3G6UN0AVZjABqqSgBo6AQXSkAOukUB9AXQC8g4WMoAKeSFUGAlIrPoAxlFRw4dAPKVMMSqzYAZCHAa6oXhgDaqgC6xoiKdJF0BjEg0nR%2B3owAFqj8NKisDJnodrzOrux0NDDZmGmohLExSuhRdPkubsppDJSIdN6UGtEgPHAQDBC4SiDmis5gdJQwFiPegwCuDDD6dVFWcB1MxDABjgVunt5BAsHBUpgQFgzKHVc3AV1SsqQXnCs0Wwn%2Bp8GKxjoAFoAHwOJxNdjHQIhcLrSLVEAAVXQLAsAGtYHQMODDlD-JxctlLDAqmNyREogBiOhkGZgKCkDoAWS8AyK-UGw3QqCg2MobEWJXQDDsAANeBA2KwxVIxeI2HAxZTIjT6urWHQwItLEMRnQxTt4IQAOIwdBNCzSPw2QjKZQWgDu9uV8Ia2AAVj1NnaHTBncpdJtTG7cJ7fQ9bspCItiOUVrpI8oQ-VEgxCDB8CssLowx6pIMYF8U1EZgxFpQ6nmQBIQMtoHASORECAaUihn4mFqdTduXBzJMtbwMrd0ELsC5dPgOllAaDOm04fUyxW6mADAA5ccuDrAfAAXxqNb6pHpjMIDFoUAoNIACqeYAzSJ0MDgCHQ5uhIILKGluVV0BpABlGAYDoZIGAYYgtgAehgulH3PXg2Bg80YMwXALDgGDP2-Cs-xGGCh26VAADdMmsbAsVwqV8L1KtiHoxtFDIBhkhGIFSJcAZ9U0AwAGZCAARgAJiPfda1QXsuIAMWgGAKDQLA8CIMgQH3IA
### (Only applicable for extension issues) IDE Information
_No response_
Contributor guide
Assessment
This issue has not been assessed yet.