bpo-40397: Fix subscription of nested generic alias without parameters. (GH-20021)

This commit is contained in:
Serhiy Storchaka 2020-05-10 13:39:40 +03:00 committed by GitHub
parent 86a93fddf7
commit 0122d48681
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 16 additions and 3 deletions

View file

@ -702,8 +702,10 @@ class _GenericAlias(_BaseGenericAlias, _root=True):
if isinstance(arg, TypeVar):
arg = subst[arg]
elif isinstance(arg, (_GenericAlias, GenericAlias)):
subargs = tuple(subst[x] for x in arg.__parameters__)
arg = arg[subargs]
subparams = arg.__parameters__
if subparams:
subargs = tuple(subst[x] for x in subparams)
arg = arg[subargs]
new_args.append(arg)
return self.copy_with(tuple(new_args))