facebook / facebook/pyrefly

support creation of union from generic class constructor

Open
#1,134 2 comments 0 reactions 1 assignee Claimed by @asukaminato0721 View on GitHub
typechecking
Dominant language
Rust
Stars
7k
Forks
516
PR merge metrics
No merged PRs in 30d

Description

### Describe the Bug

```py
class A[T]:
def __init__(self, value: T):
self._value = value

def f(value: int | str):
_: A[int] | A[str] = A(value) # Argument `int | str` is not assignable to parameter `value` with type `int` in function `A.__init__`
```

here, this assignment is completey safe and valid, i would expect no error

### Sandbox Link

_No response_

### (Only applicable for extension issues) IDE Information

_No response_

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.