@@ -3528,14 +3528,16 @@ def __repr__(self) -> str:
35283528
35293529 if sys .version_info >= (3 , 11 ):
35303530 def __getitem__ (self , parameters ):
3531+ if len (self .__type_params__ ) == 0 :
3532+ raise TypeError ("Only generic type aliases are subscriptable" )
35313533 if not isinstance (parameters , tuple ):
35323534 parameters = (parameters ,)
35333535 parameters = [
3534- typing ._type_check (
3535- item , f'Subscripting { self .__name__ } requires a type.'
3536- )
3537- for item in parameters
3538- ]
3536+ typing ._type_check (
3537+ item , f'Subscripting { self .__name__ } requires a type.'
3538+ )
3539+ for item in parameters
3540+ ]
35393541 alias = typing ._GenericAlias (self , tuple (parameters ))
35403542 alias .__value__ = self .__value__
35413543 alias .__type_params__ = self .__type_params__
@@ -3560,12 +3562,14 @@ def _check_parameter(self, item, recursion=0):
35603562 )
35613563
35623564 def __getitem__ (self , parameters ):
3565+ if len (self .__type_params__ ) == 0 :
3566+ raise TypeError ("Only generic type aliases are subscriptable" )
35633567 if not isinstance (parameters , tuple ):
35643568 parameters = (parameters ,)
35653569 parameters = [
3566- checked
3567- for item in parameters
3568- for checked in self ._check_parameter (item )
3570+ checked
3571+ for item in parameters
3572+ for checked in self ._check_parameter (item )
35693573 ]
35703574 if sys .version_info [:2 ] == (3 , 10 ):
35713575 alias = typing ._GenericAlias (self , tuple (parameters ),
0 commit comments