Fix various ParamSpec errors in typing (GH-24176)
1. ParamSpec -> TypeVar for ``typing.Concatenate``
2. ParamSpec's call signature should align with its documentation.
Noticed in GH-24169
diff --git a/Doc/library/typing.rst b/Doc/library/typing.rst
index c14c710..3b4dba3 100644
--- a/Doc/library/typing.rst
+++ b/Doc/library/typing.rst
@@ -695,10 +695,10 @@
from collections.abc import Callable
from threading import Lock
- from typing import Any, Concatenate, ParamSpec
+ from typing import Any, Concatenate, ParamSpec, TypeVar
P = ParamSpec('P')
- R = ParamSpec('R')
+ R = TypeVar('R')
# Use this lock to ensure that only one thread is executing a function
# at any time.
diff --git a/Lib/typing.py b/Lib/typing.py
index 88d0d62..6224930 100644
--- a/Lib/typing.py
+++ b/Lib/typing.py
@@ -779,7 +779,7 @@ def add_two(x: float, y: float) -> float:
args = object()
kwargs = object()
- def __init__(self, name, bound=None, covariant=False, contravariant=False):
+ def __init__(self, name, *, bound=None, covariant=False, contravariant=False):
self.__name__ = name
super().__init__(bound, covariant, contravariant)
try: