From: Tim Peters Date: Sun, 17 Feb 2002 04:13:21 +0000 (+0000) Subject: Moved the declaration of PySocketSock_Type from socketmodule.h to X-Git-Tag: v2.3c1~6655 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=643a7fc62fd6a9df3325d54ac1ac636d17f3f983;p=python Moved the declaration of PySocketSock_Type from socketmodule.h to socketmodule.c. No code outside of the .c file references it, so it doesn't belong the .h file (at least not yet ...), and declaring it an imported symbol in the .h file can't be made to work on Windows (it's a cross-DLL symbol then) without substantial code rewriting. Also repaired the comment that goes along with the decl, to stop referring to names and functions that haven't existed for 7 years . socketmodule.c compiles cleanly on Windows again. The test_socket dies at once, though (later). --- diff --git a/Modules/socketmodule.c b/Modules/socketmodule.c index a8560d6a6a..2f954a9ce3 100644 --- a/Modules/socketmodule.c +++ b/Modules/socketmodule.c @@ -251,6 +251,11 @@ static PyObject *PyGAI_Error; static int taskwindow; #endif +/* A forward reference to the socket type object. + The PySocketSock_Type variable contains pointers to various functions, + some of which call PySocketSock_New(), which uses PySocketSock_Type, so + there has to be a circular reference. */ +staticforward PyTypeObject PySocketSock_Type; /* Convenience function to raise an error according to errno and return a NULL pointer from a function. */ diff --git a/Modules/socketmodule.h b/Modules/socketmodule.h index a1a212262a..ef4ba38e27 100644 --- a/Modules/socketmodule.h +++ b/Modules/socketmodule.h @@ -75,13 +75,6 @@ typedef struct { sets a Python exception */ } PySocketSockObject; -/* A forward reference to the Socktype type object. - The Socktype variable contains pointers to various functions, - some of which call newsockobject(), which uses Socktype, so - there has to be a circular reference. */ - -extern DL_IMPORT(PyTypeObject) PySocketSock_Type; - /* --- C API ----------------------------------------------------*/ /* C API for usage by other Python modules */