diff --git a/peps/pep-0747.rst b/peps/pep-0747.rst index af779076a0b..e14da88075c 100644 --- a/peps/pep-0747.rst +++ b/peps/pep-0747.rst @@ -311,15 +311,15 @@ Assignability t1: TypeForm[int | str] = get_type_form() # OK t2: TypeForm[str] = get_type_form() # Error -``type[T]`` is a subtype of ``TypeForm[T]``, which means that ``type[B]`` is -assignable to ``TypeForm[A]`` if ``B`` is assignable to ``A``:: +Given two fully static types ``T1`` and ``T2``, ``type[T1]`` is a subtype of ``TypeForm[T2]`` +if ``T1`` is a subtype of ``T2``:: def get_type() -> type[int]: ... t3: TypeForm[int | str] = get_type() # OK t4: TypeForm[str] = get_type() # Error -``TypeForm`` is a subtype of ``object`` and is assumed to have all of the +Any specialization of ``TypeForm`` is a subtype of ``object`` and is assumed to have all of the attributes and methods of ``object``.