[Python-checkins] r84811 - in python/branches/release31-maint: Doc/extending/windows.rst Include/pyport.h

daniel.stutzbach python-checkins at python.org
Tue Sep 14 18:07:54 CEST 2010


Author: daniel.stutzbach
Date: Tue Sep 14 18:07:54 2010
New Revision: 84811
Log:
Merged revisions 84810 via svnmerge from 
svn+ssh://pythondev@svn.python.org/python/branches/py3k
........
 r84810 | daniel.stutzbach | 2010年09月14日 11:02:01 -0500 (2010年9月14日) | 1 line
 
 Remove pointers to a FAQ entry that no longer exists. Incorporate some text from the old FAQ into the docs
........
Modified:
 python/branches/release31-maint/ (props changed)
 python/branches/release31-maint/Doc/extending/windows.rst
 python/branches/release31-maint/Include/pyport.h
Modified: python/branches/release31-maint/Doc/extending/windows.rst
==============================================================================
--- python/branches/release31-maint/Doc/extending/windows.rst	(original)
+++ python/branches/release31-maint/Doc/extending/windows.rst	Tue Sep 14 18:07:54 2010
@@ -171,7 +171,9 @@
 
 PyVarObject_HEAD_INIT(&PyType_Type, 0)
 
-Change it to::
+Static type object initializers in extension modules may cause
+compiles to fail with an error message like "initializer not a
+constant". This shows up when building DLL under MSVC. Change it to::
 
 PyVarObject_HEAD_INIT(NULL, 0)
 
@@ -179,8 +181,6 @@
 
 MyObject_Type.ob_type = &PyType_Type;
 
-Refer to section 3 of the `Python FAQ <http://www.python.org/doc/faq>`_ for
-details on why you must do this.
 
 
 .. _dynamic-linking:
Modified: python/branches/release31-maint/Include/pyport.h
==============================================================================
--- python/branches/release31-maint/Include/pyport.h	(original)
+++ python/branches/release31-maint/Include/pyport.h	Tue Sep 14 18:07:54 2010
@@ -663,23 +663,24 @@
 # ifdef Py_BUILD_CORE
 # define PyAPI_FUNC(RTYPE) __declspec(dllexport) RTYPE
 # define PyAPI_DATA(RTYPE) extern __declspec(dllexport) RTYPE
- /* module init functions inside the core need no external linkage */
- /* except for Cygwin to handle embedding */
+ /* module init functions inside the core need no external linkage */
+ /* except for Cygwin to handle embedding */
 # if defined(__CYGWIN__)
 # define PyMODINIT_FUNC __declspec(dllexport) PyObject*
 # else /* __CYGWIN__ */
 # define PyMODINIT_FUNC PyObject*
 # endif /* __CYGWIN__ */
 # else /* Py_BUILD_CORE */
- /* Building an extension module, or an embedded situation */
- /* public Python functions and data are imported */
- /* Under Cygwin, auto-import functions to prevent compilation */
- /* failures similar to http://python.org/doc/FAQ.html#3.24 */
+ /* Building an extension module, or an embedded situation */
+ /* public Python functions and data are imported */
+ /* Under Cygwin, auto-import functions to prevent compilation */
+ /* failures similar to those described at the bottom of 4.1: */
+ /* http://docs.python.org/extending/windows.html#a-cookbook-approach */
 # if !defined(__CYGWIN__)
 # define PyAPI_FUNC(RTYPE) __declspec(dllimport) RTYPE
 # endif /* !__CYGWIN__ */
 # define PyAPI_DATA(RTYPE) extern __declspec(dllimport) RTYPE
- /* module init functions outside the core must be exported */
+ /* module init functions outside the core must be exported */
 # if defined(__cplusplus)
 # define PyMODINIT_FUNC extern "C" __declspec(dllexport) PyObject*
 # else /* __cplusplus */


More information about the Python-checkins mailing list

AltStyle によって変換されたページ (->オリジナル) /