1616GoodAlias1 = TypeAliasType ("GoodAlias1" , int )
1717GoodAlias2 = TypeAliasType ("GoodAlias2" , list [T ], type_params = (T ,))
1818GoodAlias3 = TypeAliasType ("GoodAlias3" , list [T ] | list [S ], type_params = (S , T ))
19- GoodAlias4 = TypeAliasType ("GoodAlias4" , T | list [GoodAlias4 [T ]], type_params = (T ,))
19+ GoodAlias4 = TypeAliasType ("GoodAlias4" , T | " list[GoodAlias4[T]]" , type_params = (T ,))
2020GoodAlias5 = TypeAliasType (
2121 "GoodAlias5" ,
22- Callable [P , TStr ] | list [S ] | list [GoodAlias5 [S , TStr , P ]] | tuple [* Ts ],
22+ Callable [P , TStr ] | list [S ] | list [" GoodAlias5[S, TStr, P]" ] | tuple [* Ts ],
2323 type_params = (S , TStr , P , Ts ),
2424)
2525
@@ -43,9 +43,9 @@ class ClassA(Generic[T]):
4343BadAlias1 = TypeAliasType ("BadAlias1" , list [S ], type_params = (T ,)) # E: S not in scope
4444BadAlias2 = TypeAliasType ("BadAlias2" , list [S ]) # E: S not in scope
4545BadAlias3 = TypeAliasType ("BadAlias3" , int , type_params = my_tuple ) # E: not literal tuple
46- BadAlias4 = TypeAliasType ("BadAlias4" , BadAlias4 ) # E: circular dependency
47- BadAlias5 = TypeAliasType ("BadAlias5" , T | BadAlias5 [str ], type_params = (T ,)) # E: circular dependency
48- BadAlias6 = TypeAliasType ("BadAlias6" , BadAlias7 ) # E: circular dependency
46+ BadAlias4 = TypeAliasType ("BadAlias4" , " BadAlias4" ) # E: circular dependency
47+ BadAlias5 = TypeAliasType ("BadAlias5" , T | " BadAlias5[str]" , type_params = (T ,)) # E: circular dependency
48+ BadAlias6 = TypeAliasType ("BadAlias6" , " BadAlias7" ) # E: circular dependency
4949BadAlias7 = TypeAliasType ("BadAlias7" , BadAlias6 ) # E?: circular dependency
5050
5151# The following are invalid type expressions for a type alias.
@@ -62,3 +62,5 @@ class ClassA(Generic[T]):
6262BadAlias18 = TypeAliasType ("BadAlias18" , 1 ) # E
6363BadAlias19 = TypeAliasType ("BadAlias19" , list or set ) # E
6464BadAlias20 = TypeAliasType ("BadAlias20" , f"{ 'int' } " ) # E
65+
66+ BadAlias21 = TypeAliasType ("BadAlias21" , list [BadAlias21 ]) # E
0 commit comments