diff --git a/stdlib/_ctypes.pyi b/stdlib/_ctypes.pyi index c2b612c38bff..25d604218a00 100644 --- a/stdlib/_ctypes.pyi +++ b/stdlib/_ctypes.pyi @@ -22,6 +22,9 @@ RTLD_LOCAL: int if sys.version_info >= (3, 11): CTYPES_MAX_ARGCOUNT: int +if sys.version_info >= (3, 12): + SIZEOF_TIME_T: int + if sys.platform == "win32": # Description, Source, HelpFile, HelpContext, scode _COMError_Details: TypeAlias = tuple[str | None, str | None, str | None, int | None, int | None] diff --git a/stdlib/ctypes/__init__.pyi b/stdlib/ctypes/__init__.pyi index 7a185a5b523e..b14fb93c8163 100644 --- a/stdlib/ctypes/__init__.pyi +++ b/stdlib/ctypes/__init__.pyi @@ -181,6 +181,9 @@ class c_bool(_SimpleCData[bool]): if sys.platform == "win32": class HRESULT(_SimpleCData[int]): ... # TODO undocumented +if sys.version_info >= (3, 12): + c_time_t: type[c_int32 | c_int64] + class py_object(_CanCastTo, _SimpleCData[_T]): ... class BigEndianStructure(Structure): ... class LittleEndianStructure(Structure): ... diff --git a/tests/stubtest_allowlists/py312.txt b/tests/stubtest_allowlists/py312.txt index 194a3b7dc3ad..e3811a782f95 100644 --- a/tests/stubtest_allowlists/py312.txt +++ b/tests/stubtest_allowlists/py312.txt @@ -1,5 +1,4 @@ # Uncategorised, from Python 3.12 -_ctypes.SIZEOF_TIME_T argparse.BooleanOptionalAction.__init__ array.array.__class_getitem__ asyncio.BaseEventLoop.create_connection @@ -22,7 +21,6 @@ collections.UserDict.get configparser.ParsingError.__init__ configparser.RawConfigParser.readfp configparser.__all__ -ctypes.c_time_t datetime.__all__ email.utils.localtime enum.Enum.__signature__