summaryrefslogtreecommitdiffstats
path: root/PC
diff options
context:
space:
mode:
Diffstat (limited to 'PC')
-rw-r--r--PC/VC6/_multiprocessing.dsp8
-rw-r--r--PC/VC6/pythoncore.dsp4
-rw-r--r--PC/VC6/readme.txt4
-rw-r--r--PC/VS7.1/pythoncore.vcproj24
-rw-r--r--PC/VS7.1/readme.txt4
-rw-r--r--PC/VS8.0/_multiprocessing.vcproj12
-rw-r--r--PC/VS8.0/build_ssl.bat4
-rw-r--r--PC/VS8.0/kill_python.c2
-rw-r--r--PC/VS8.0/pyproject.vsprops2
-rw-r--r--PC/_msi.c18
-rw-r--r--PC/_subprocess.c85
-rw-r--r--PC/config.c2
-rw-r--r--PC/example_nt/example.vcproj4
-rw-r--r--PC/frozen_dllmain.c6
-rw-r--r--PC/getpathp.c6
-rw-r--r--PC/import_nt.c131
-rwxr-xr-xPC/msvcrtmodule.c12
-rw-r--r--PC/os2emx/Makefile2
-rw-r--r--PC/os2emx/README.os2emx2
-rw-r--r--PC/os2emx/pyconfig.h2
-rw-r--r--PC/os2emx/python33.def (renamed from PC/os2emx/python27.def)250
-rw-r--r--PC/pyconfig.h11
-rw-r--r--PC/python3.def1374
-rw-r--r--PC/python3.mak12
-rw-r--r--PC/python33gen.py (renamed from PC/python32gen.py)9
-rw-r--r--PC/python33stub.def (renamed from PC/python32stub.def)2
-rw-r--r--PC/winreg.c86
-rw-r--r--PC/winsound.c2
28 files changed, 1053 insertions, 1027 deletions
diff --git a/PC/VC6/_multiprocessing.dsp b/PC/VC6/_multiprocessing.dsp
index 2dcaf83..e1b8470 100644
--- a/PC/VC6/_multiprocessing.dsp
+++ b/PC/VC6/_multiprocessing.dsp
@@ -97,18 +97,10 @@ SOURCE=..\..\Modules\_multiprocessing\multiprocessing.c
# End Source File
# Begin Source File
-SOURCE=..\..\Modules\_multiprocessing\pipe_connection.c
-# End Source File
-# Begin Source File
-
SOURCE=..\..\Modules\_multiprocessing\semaphore.c
# End Source File
# Begin Source File
-SOURCE=..\..\Modules\_multiprocessing\socket_connection.c
-# End Source File
-# Begin Source File
-
SOURCE=..\..\Modules\_multiprocessing\win32_functions.c
# End Source File
# End Target
diff --git a/PC/VC6/pythoncore.dsp b/PC/VC6/pythoncore.dsp
index 2afa322..61247b7 100644
--- a/PC/VC6/pythoncore.dsp
+++ b/PC/VC6/pythoncore.dsp
@@ -54,7 +54,7 @@ BSC32=bscmake.exe
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /machine:I386
-# ADD LINK32 largeint.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x1e000000" /subsystem:windows /dll /debug /machine:I386 /nodefaultlib:"libc" /out:"./python32.dll"
+# ADD LINK32 largeint.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x1e000000" /subsystem:windows /dll /debug /machine:I386 /nodefaultlib:"libc" /out:"./python33.dll"
# SUBTRACT LINK32 /pdb:none
!ELSEIF "$(CFG)" == "pythoncore - Win32 Debug"
@@ -82,7 +82,7 @@ BSC32=bscmake.exe
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 largeint.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x1e000000" /subsystem:windows /dll /debug /machine:I386 /nodefaultlib:"libc" /out:"./python32_d.dll" /pdbtype:sept
+# ADD LINK32 largeint.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x1e000000" /subsystem:windows /dll /debug /machine:I386 /nodefaultlib:"libc" /out:"./python33_d.dll" /pdbtype:sept
# SUBTRACT LINK32 /pdb:none
!ENDIF
diff --git a/PC/VC6/readme.txt b/PC/VC6/readme.txt
index 4e8d237..a683527 100644
--- a/PC/VC6/readme.txt
+++ b/PC/VC6/readme.txt
@@ -12,7 +12,7 @@ and build the projects.
The proper order to build subprojects:
1) pythoncore (this builds the main Python DLL and library files,
- python32.{dll, lib} in Release mode)
+ python33.{dll, lib} in Release mode)
2) python (this builds the main Python executable,
python.exe in Release mode)
@@ -23,7 +23,7 @@ The proper order to build subprojects:
to the subsystems they implement; see SUBPROJECTS below)
When using the Debug setting, the output files have a _d added to
-their name: python32_d.dll, python_d.exe, pyexpat_d.pyd, and so on.
+their name: python33_d.dll, python_d.exe, pyexpat_d.pyd, and so on.
SUBPROJECTS
-----------
diff --git a/PC/VS7.1/pythoncore.vcproj b/PC/VS7.1/pythoncore.vcproj
index b629df4..d882911 100644
--- a/PC/VS7.1/pythoncore.vcproj
+++ b/PC/VS7.1/pythoncore.vcproj
@@ -39,15 +39,15 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="getbuildinfo.o"
- OutputFile="./python32.dll"
+ OutputFile="./python33.dll"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
IgnoreDefaultLibraryNames="libc"
GenerateDebugInformation="TRUE"
- ProgramDatabaseFile=".\./python32.pdb"
+ ProgramDatabaseFile=".\./python33.pdb"
SubSystem="2"
BaseAddress="0x1e000000"
- ImportLibrary=".\./python32.lib"
+ ImportLibrary=".\./python33.lib"
TargetMachine="1"/>
<Tool
Name="VCMIDLTool"/>
@@ -99,15 +99,15 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="getbuildinfo.o"
- OutputFile="./python32_d.dll"
+ OutputFile="./python33_d.dll"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
IgnoreDefaultLibraryNames="libc"
GenerateDebugInformation="TRUE"
- ProgramDatabaseFile=".\./python32_d.pdb"
+ ProgramDatabaseFile=".\./python33_d.pdb"
SubSystem="2"
BaseAddress="0x1e000000"
- ImportLibrary=".\./python32_d.lib"
+ ImportLibrary=".\./python33_d.lib"
TargetMachine="1"/>
<Tool
Name="VCMIDLTool"/>
@@ -166,15 +166,15 @@
Name="VCLinkerTool"
AdditionalOptions=" /MACHINE:IA64 /USELINK:MS_SDK"
AdditionalDependencies="getbuildinfo.o"
- OutputFile="./python32.dll"
+ OutputFile="./python33.dll"
LinkIncremental="1"
SuppressStartupBanner="FALSE"
IgnoreDefaultLibraryNames="libc"
GenerateDebugInformation="TRUE"
- ProgramDatabaseFile=".\./python32.pdb"
+ ProgramDatabaseFile=".\./python33.pdb"
SubSystem="2"
BaseAddress="0x1e000000"
- ImportLibrary=".\./python32.lib"
+ ImportLibrary=".\./python33.lib"
TargetMachine="0"/>
<Tool
Name="VCMIDLTool"/>
@@ -233,15 +233,15 @@
Name="VCLinkerTool"
AdditionalOptions=" /MACHINE:AMD64 /USELINK:MS_SDK"
AdditionalDependencies="getbuildinfo.o"
- OutputFile="./python32.dll"
+ OutputFile="./python33.dll"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
IgnoreDefaultLibraryNames="libc"
GenerateDebugInformation="TRUE"
- ProgramDatabaseFile=".\./python32.pdb"
+ ProgramDatabaseFile=".\./python33.pdb"
SubSystem="2"
BaseAddress="0x1e000000"
- ImportLibrary=".\./python32.lib"
+ ImportLibrary=".\./python33.lib"
TargetMachine="0"/>
<Tool
Name="VCMIDLTool"/>
diff --git a/PC/VS7.1/readme.txt b/PC/VS7.1/readme.txt
index 8fb069f..bfd8a70 100644
--- a/PC/VS7.1/readme.txt
+++ b/PC/VS7.1/readme.txt
@@ -12,7 +12,7 @@ the "Standard" toolbar"), and build the projects.
The proper order to build subprojects:
1) pythoncore (this builds the main Python DLL and library files,
- python26.{dll, lib} in Release mode)
+ python33.{dll, lib} in Release mode)
NOTE: in previous releases, this subproject was
named after the release number, e.g. python20.
@@ -26,7 +26,7 @@ The proper order to build subprojects:
test slave; see SUBPROJECTS below)
When using the Debug setting, the output files have a _d added to
-their name: python26_d.dll, python_d.exe, parser_d.pyd, and so on.
+their name: python33_d.dll, python_d.exe, parser_d.pyd, and so on.
SUBPROJECTS
-----------
diff --git a/PC/VS8.0/_multiprocessing.vcproj b/PC/VS8.0/_multiprocessing.vcproj
index c2bbec4..8f1cafc 100644
--- a/PC/VS8.0/_multiprocessing.vcproj
+++ b/PC/VS8.0/_multiprocessing.vcproj
@@ -522,10 +522,6 @@
RelativePath="..\..\Modules\_multiprocessing\multiprocessing.h"
>
</File>
- <File
- RelativePath="..\..\Modules\_multiprocessing\connection.h"
- >
- </File>
</Filter>
<Filter
Name="Source Files"
@@ -535,18 +531,10 @@
>
</File>
<File
- RelativePath="..\..\Modules\_multiprocessing\pipe_connection.c"
- >
- </File>
- <File
RelativePath="..\..\Modules\_multiprocessing\semaphore.c"
>
</File>
<File
- RelativePath="..\..\Modules\_multiprocessing\socket_connection.c"
- >
- </File>
- <File
RelativePath="..\..\Modules\_multiprocessing\win32_functions.c"
>
</File>
diff --git a/PC/VS8.0/build_ssl.bat b/PC/VS8.0/build_ssl.bat
index 39c1ff0..357b08b 100644
--- a/PC/VS8.0/build_ssl.bat
+++ b/PC/VS8.0/build_ssl.bat
@@ -2,10 +2,10 @@
if not defined HOST_PYTHON (
if %1 EQU Debug (
set HOST_PYTHON=python_d.exe
- if not exist python32_d.dll exit 1
+ if not exist python33_d.dll exit 1
) ELSE (
set HOST_PYTHON=python.exe
- if not exist python32.dll exit 1
+ if not exist python33.dll exit 1
)
)
%HOST_PYTHON% build_ssl.py %1 %2 %3
diff --git a/PC/VS8.0/kill_python.c b/PC/VS8.0/kill_python.c
index 6b91678..bb323d3 100644
--- a/PC/VS8.0/kill_python.c
+++ b/PC/VS8.0/kill_python.c
@@ -106,7 +106,7 @@ main(int argc, char **argv)
/*
* XXX TODO: if we really wanted to be fancy, we could check the
* modules for all processes (not just the python[_d].exe ones)
- * and see if any of our DLLs are loaded (i.e. python32[_d].dll),
+ * and see if any of our DLLs are loaded (i.e. python33[_d].dll),
* as that would also inhibit our ability to rebuild the solution.
* Not worth loosing sleep over though; for now, a simple check
* for just the python executable should be sufficient.
diff --git a/PC/VS8.0/pyproject.vsprops b/PC/VS8.0/pyproject.vsprops
index 6494216..4a582f1 100644
--- a/PC/VS8.0/pyproject.vsprops
+++ b/PC/VS8.0/pyproject.vsprops
@@ -38,7 +38,7 @@
/>
<UserMacro
Name="PyDllName"
- Value="python32"
+ Value="python33"
/>
<UserMacro
Name="PythonExe"
diff --git a/PC/_msi.c b/PC/_msi.c
index d4d8483..0b5b94e 100644
--- a/PC/_msi.c
+++ b/PC/_msi.c
@@ -18,7 +18,7 @@ static PyObject*
uuidcreate(PyObject* obj, PyObject*args)
{
UUID result;
- unsigned short *cresult;
+ wchar_t *cresult;
PyObject *oresult;
/* May return ok, local only, and no address.
@@ -35,7 +35,7 @@ uuidcreate(PyObject* obj, PyObject*args)
return NULL;
}
- oresult = PyUnicode_FromUnicode(cresult, wcslen(cresult));
+ oresult = PyUnicode_FromWideChar(cresult, wcslen(cresult));
RpcStringFreeW(&cresult);
return oresult;
@@ -122,7 +122,9 @@ static FNFCIGETTEMPFILE(cb_gettempfile)
static FNFCISTATUS(cb_status)
{
if (pv) {
- PyObject *result = PyObject_CallMethod(pv, "status", "iii", typeStatus, cb1, cb2);
+ _Py_IDENTIFIER(status);
+
+ PyObject *result = _PyObject_CallMethodId(pv, &PyId_status, "iii", typeStatus, cb1, cb2);
if (result == NULL)
return -1;
Py_DECREF(result);
@@ -133,7 +135,9 @@ static FNFCISTATUS(cb_status)
static FNFCIGETNEXTCABINET(cb_getnextcabinet)
{
if (pv) {
- PyObject *result = PyObject_CallMethod(pv, "getnextcabinet", "i", pccab->iCab);
+ _Py_IDENTIFIER(getnextcabinet);
+
+ PyObject *result = _PyObject_CallMethodId(pv, &PyId_getnextcabinet, "i", pccab->iCab);
if (result == NULL)
return -1;
if (!PyBytes_Check(result)) {
@@ -375,7 +379,7 @@ record_getstring(msiobj* record, PyObject* args)
}
if (status != ERROR_SUCCESS)
return msierror((int) status);
- string = PyUnicode_FromUnicode(res, size);
+ string = PyUnicode_FromWideChar(res, size);
if (buf != res)
free(res);
return string;
@@ -397,7 +401,7 @@ record_setstring(msiobj* record, PyObject *args)
{
int status;
int field;
- Py_UNICODE *data;
+ wchar_t *data;
if (!PyArg_ParseTuple(args, "iu:SetString", &field, &data))
return NULL;
@@ -414,7 +418,7 @@ record_setstream(msiobj* record, PyObject *args)
{
int status;
int field;
- Py_UNICODE *data;
+ wchar_t *data;
if (!PyArg_ParseTuple(args, "iu:SetStream", &field, &data))
return NULL;
diff --git a/PC/_subprocess.c b/PC/_subprocess.c
index 2338f30..93e51d3 100644
--- a/PC/_subprocess.c
+++ b/PC/_subprocess.c
@@ -329,12 +329,9 @@ gethandle(PyObject* obj, char* name)
static PyObject*
getenvironment(PyObject* environment)
{
- int i;
- Py_ssize_t envsize;
- PyObject* out = NULL;
- PyObject* keys;
- PyObject* values;
- Py_UNICODE* p;
+ Py_ssize_t i, envsize, totalsize;
+ Py_UCS4 *buffer = NULL, *p, *end;
+ PyObject *keys, *values, *res;
/* convert environment dictionary to windows enviroment string */
if (! PyMapping_Check(environment)) {
@@ -350,14 +347,8 @@ getenvironment(PyObject* environment)
if (!keys || !values)
goto error;
- out = PyUnicode_FromUnicode(NULL, 2048);
- if (! out)
- goto error;
-
- p = PyUnicode_AS_UNICODE(out);
-
+ totalsize = 1; /* trailing null character */
for (i = 0; i < envsize; i++) {
- Py_ssize_t ksize, vsize, totalsize;
PyObject* key = PyList_GET_ITEM(keys, i);
PyObject* value = PyList_GET_ITEM(values, i);
@@ -366,36 +357,42 @@ getenvironment(PyObject* environment)
"environment can only contain strings");
goto error;
}
- ksize = PyUnicode_GET_SIZE(key);
- vsize = PyUnicode_GET_SIZE(value);
- totalsize = (p - PyUnicode_AS_UNICODE(out)) + ksize + 1 +
- vsize + 1 + 1;
- if (totalsize > PyUnicode_GET_SIZE(out)) {
- Py_ssize_t offset = p - PyUnicode_AS_UNICODE(out);
- PyUnicode_Resize(&out, totalsize + 1024);
- p = PyUnicode_AS_UNICODE(out) + offset;
- }
- Py_UNICODE_COPY(p, PyUnicode_AS_UNICODE(key), ksize);
- p += ksize;
+ totalsize += PyUnicode_GET_LENGTH(key) + 1; /* +1 for '=' */
+ totalsize += PyUnicode_GET_LENGTH(value) + 1; /* +1 for '\0' */
+ }
+
+ buffer = PyMem_Malloc(totalsize * sizeof(Py_UCS4));
+ if (! buffer)
+ goto error;
+ p = buffer;
+ end = buffer + totalsize;
+
+ for (i = 0; i < envsize; i++) {
+ PyObject* key = PyList_GET_ITEM(keys, i);
+ PyObject* value = PyList_GET_ITEM(values, i);
+ if (!PyUnicode_AsUCS4(key, p, end - p, 0))
+ goto error;
+ p += PyUnicode_GET_LENGTH(key);
*p++ = '=';
- Py_UNICODE_COPY(p, PyUnicode_AS_UNICODE(value), vsize);
- p += vsize;
+ if (!PyUnicode_AsUCS4(value, p, end - p, 0))
+ goto error;
+ p += PyUnicode_GET_LENGTH(value);
*p++ = '\0';
}
/* add trailing null byte */
*p++ = '\0';
- PyUnicode_Resize(&out, p - PyUnicode_AS_UNICODE(out));
-
- /* PyObject_Print(out, stdout, 0); */
+ assert(p == end);
Py_XDECREF(keys);
Py_XDECREF(values);
- return out;
+ res = PyUnicode_FromKindAndData(PyUnicode_4BYTE_KIND, buffer, p - buffer);
+ PyMem_Free(buffer);
+ return res;
error:
- Py_XDECREF(out);
+ PyMem_Free(buffer);
Py_XDECREF(keys);
Py_XDECREF(values);
return NULL;
@@ -420,15 +417,16 @@ sp_CreateProcess(PyObject* self, PyObject* args)
PROCESS_INFORMATION pi;
STARTUPINFOW si;
PyObject* environment;
+ wchar_t *wenvironment;
- Py_UNICODE* application_name;
- Py_UNICODE* command_line;
+ wchar_t* application_name;
+ wchar_t* command_line;
PyObject* process_attributes; /* ignored */
PyObject* thread_attributes; /* ignored */
int inherit_handles;
int creation_flags;
PyObject* env_mapping;
- Py_UNICODE* current_directory;
+ wchar_t* current_directory;
PyObject* startup_info;
if (! PyArg_ParseTuple(args, "ZZOOiiOZO:CreateProcess",
@@ -456,12 +454,20 @@ sp_CreateProcess(PyObject* self, PyObject* args)
if (PyErr_Occurred())
return NULL;
- if (env_mapping == Py_None)
- environment = NULL;
- else {
+ if (env_mapping != Py_None) {
environment = getenvironment(env_mapping);
if (! environment)
return NULL;
+ wenvironment = PyUnicode_AsUnicode(environment);
+ if (wenvironment == NULL)
+ {
+ Py_XDECREF(environment);
+ return NULL;
+ }
+ }
+ else {
+ environment = NULL;
+ wenvironment = NULL;
}
Py_BEGIN_ALLOW_THREADS
@@ -471,7 +477,7 @@ sp_CreateProcess(PyObject* self, PyObject* args)
NULL,
inherit_handles,
creation_flags | CREATE_UNICODE_ENVIRONMENT,
- environment ? PyUnicode_AS_UNICODE(environment) : NULL,
+ wenvironment,
current_directory,
&si,
&pi);
@@ -609,7 +615,7 @@ sp_GetModuleFileName(PyObject* self, PyObject* args)
if (! result)
return PyErr_SetFromWindowsErr(GetLastError());
- return PyUnicode_FromUnicode(filename, Py_UNICODE_strlen(filename));
+ return PyUnicode_FromWideChar(filename, wcslen(filename));
}
static PyMethodDef sp_functions[] = {
@@ -682,6 +688,7 @@ PyInit__subprocess()
defint(d, "SW_HIDE", SW_HIDE);
defint(d, "INFINITE", INFINITE);
defint(d, "WAIT_OBJECT_0", WAIT_OBJECT_0);
+ defint(d, "WAIT_TIMEOUT", WAIT_TIMEOUT);
defint(d, "CREATE_NEW_CONSOLE", CREATE_NEW_CONSOLE);
defint(d, "CREATE_NEW_PROCESS_GROUP", CREATE_NEW_PROCESS_GROUP);
diff --git a/PC/config.c b/PC/config.c
index 1fc2b40..be51b55 100644
--- a/PC/config.c
+++ b/PC/config.c
@@ -12,6 +12,7 @@ extern PyObject* PyInit_audioop(void);
extern PyObject* PyInit_binascii(void);
extern PyObject* PyInit_cmath(void);
extern PyObject* PyInit_errno(void);
+extern PyObject* PyInit_faulthandler(void);
extern PyObject* PyInit_gc(void);
extern PyObject* PyInit_math(void);
extern PyObject* PyInit__md5(void);
@@ -82,6 +83,7 @@ struct _inittab _PyImport_Inittab[] = {
{"binascii", PyInit_binascii},
{"cmath", PyInit_cmath},
{"errno", PyInit_errno},
+ {"faulthandler", PyInit_faulthandler},
{"gc", PyInit_gc},
{"math", PyInit_math},
{"nt", PyInit_nt}, /* Use the NT os functions, not posix */
diff --git a/PC/example_nt/example.vcproj b/PC/example_nt/example.vcproj
index f924c7d..fba00b6 100644
--- a/PC/example_nt/example.vcproj
+++ b/PC/example_nt/example.vcproj
@@ -39,7 +39,7 @@
<Tool
Name="VCLinkerTool"
AdditionalOptions="/export:initexample"
- AdditionalDependencies="odbc32.lib odbccp32.lib python26.lib"
+ AdditionalDependencies="odbc32.lib odbccp32.lib python33.lib"
OutputFile=".\Release/example.pyd"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
@@ -105,7 +105,7 @@
<Tool
Name="VCLinkerTool"
AdditionalOptions="/export:initexample"
- AdditionalDependencies="odbc32.lib odbccp32.lib python26_d.lib"
+ AdditionalDependencies="odbc32.lib odbccp32.lib python33_d.lib"
OutputFile=".\Debug/example_d.pyd"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
diff --git a/PC/frozen_dllmain.c b/PC/frozen_dllmain.c
index a8cc885..0156c50 100644
--- a/PC/frozen_dllmain.c
+++ b/PC/frozen_dllmain.c
@@ -77,7 +77,7 @@ void PyWinFreeze_ExeTerm(void)
{
// Must go backwards
char **modName;
- for (modName = possibleModules+(sizeof(possibleModules) / sizeof(char *))-2;
+ for (modName = possibleModules+Py_ARRAY_LENGTH(possibleModules)-2;
modName >= possibleModules;
*modName--) {
/* printf("Terminating '%s'\n", *modName);*/
@@ -103,7 +103,7 @@ BOOL WINAPI DllMain(HINSTANCE hInstance, DWORD dwReason, LPVOID lpReserved)
{
// Must go backwards
char **modName;
- for (modName = possibleModules+(sizeof(possibleModules) / sizeof(char *))-2;
+ for (modName = possibleModules+Py_ARRAY_LENGTH(possibleModules)-2;
modName >= possibleModules;
*modName--)
CallModuleDllMain(*modName, DLL_PROCESS_DETACH);
@@ -118,7 +118,7 @@ BOOL CallModuleDllMain(char *modName, DWORD dwReason)
BOOL (WINAPI * pfndllmain)(HINSTANCE, DWORD, LPVOID);
char funcName[255];
- HMODULE hmod = GetModuleHandle(NULL);
+ HMODULE hmod = GetModuleHandleW(NULL);
strcpy(funcName, "_DllMain");
strcat(funcName, modName);
strcat(funcName, "@12"); // stdcall convention.
diff --git a/PC/getpathp.c b/PC/getpathp.c
index cd3a4b2..8921aa0 100644
--- a/PC/getpathp.c
+++ b/PC/getpathp.c
@@ -251,7 +251,7 @@ getpythonregpath(HKEY keyBase, int skipcore)
if (keyBuf==NULL) goto done;
memcpy(keyBufPtr, keyPrefix, sizeof(keyPrefix)-sizeof(WCHAR));
- keyBufPtr += sizeof(keyPrefix)/sizeof(WCHAR) - 1;
+ keyBufPtr += Py_ARRAY_LENGTH(keyPrefix) - 1;
mbstowcs(keyBufPtr, PyWin_DLLVersionString, versionLen);
keyBufPtr += versionLen;
/* NULL comes with this one! */
@@ -708,8 +708,8 @@ Py_GetProgramFullPath(void)
return progpath;
}
-/* Load python3.dll before loading any extension module that might refer
- to it. That way, we can be sure that always the python3.dll corresponding
+/* Load python3.dll before loading any extension module that might refer
+ to it. That way, we can be sure that always the python3.dll corresponding
to this python DLL is loaded, not a python3.dll that might be on the path
by chance.
Return whether the DLL was found.
diff --git a/PC/import_nt.c b/PC/import_nt.c
index 196a774..b9b36dc 100644
--- a/PC/import_nt.c
+++ b/PC/import_nt.c
@@ -15,72 +15,103 @@
/* a string loaded from the DLL at startup */
extern const char *PyWin_DLLVersionString;
-FILE *PyWin_FindRegisteredModule(const char *moduleName,
- struct filedescr **ppFileDesc,
- char *pathBuf,
- Py_ssize_t pathLen)
+/* Find a module on Windows.
+
+ Read the registry Software\Python\PythonCore\<version>\Modules\<name> (or
+ Software\Python\PythonCore\<version>\Modules\<name>\Debug in debug mode)
+ from HKEY_CURRENT_USER, or HKEY_LOCAL_MACHINE. Find the file descriptor using
+ the file extension. Open the file.
+
+ On success, write the file descriptor into *ppFileDesc, the module path
+ (Unicode object) into *pPath, and return the opened file object. If the
+ module cannot be found (e.g. no registry key or the file doesn't exist),
+ return NULL. On error, raise a Python exception and return NULL.
+ */
+FILE *
+_PyWin_FindRegisteredModule(PyObject *moduleName,
+ struct filedescr **ppFileDesc,
+ PyObject **pPath)
{
- char *moduleKey;
- const char keyPrefix[] = "Software\\Python\\PythonCore\\";
- const char keySuffix[] = "\\Modules\\";
-#ifdef _DEBUG
- /* In debugging builds, we _must_ have the debug version
- * registered.
- */
- const char debugString[] = "\\Debug";
-#else
- const char debugString[] = "";
-#endif
- struct filedescr *fdp = NULL;
- FILE *fp;
- HKEY keyBase = HKEY_CURRENT_USER;
+ wchar_t pathBuf[MAXPATHLEN+1];
+ int pathLen = MAXPATHLEN+1;
+ PyObject *path, *moduleKey, *suffix;
+ wchar_t *wmoduleKey, *wsuffix;
+ struct filedescr *fdp;
+ HKEY keyBase;
int modNameSize;
long regStat;
+ Py_ssize_t extLen;
+ FILE *fp;
- /* Calculate the size for the sprintf buffer.
- * Get the size of the chars only, plus 1 NULL.
- */
- size_t bufSize = sizeof(keyPrefix)-1 +
- strlen(PyWin_DLLVersionString) +
- sizeof(keySuffix) +
- strlen(moduleName) +
- sizeof(debugString) - 1;
- /* alloca == no free required, but memory only local to fn,
- * also no heap fragmentation!
- */
- moduleKey = alloca(bufSize);
- PyOS_snprintf(moduleKey, bufSize,
- "Software\\Python\\PythonCore\\%s\\Modules\\%s%s",
- PyWin_DLLVersionString, moduleName, debugString);
+ moduleKey = PyUnicode_FromFormat(
+#ifdef _DEBUG
+ /* In debugging builds, we _must_ have the debug version registered */
+ "Software\\Python\\PythonCore\\%s\\Modules\\%U\\Debug",
+#else
+ "Software\\Python\\PythonCore\\%s\\Modules\\%U",
+#endif
+ PyWin_DLLVersionString, moduleName);
+ if (moduleKey == NULL)
+ return NULL;
+ wmoduleKey = PyUnicode_AsUnicode(moduleKey);
+ if (wmoduleKey == NULL) {
+ Py_DECREF(moduleKey);
+ return NULL;
+ }
- assert(pathLen < INT_MAX);
- modNameSize = (int)pathLen;
- regStat = RegQueryValue(keyBase, moduleKey, pathBuf, &modNameSize);
+ keyBase = HKEY_CURRENT_USER;
+ modNameSize = pathLen;
+ regStat = RegQueryValueW(keyBase, wmoduleKey,
+ pathBuf, &modNameSize);
if (regStat != ERROR_SUCCESS) {
/* No user setting - lookup in machine settings */
keyBase = HKEY_LOCAL_MACHINE;
/* be anal - failure may have reset size param */
- modNameSize = (int)pathLen;
- regStat = RegQueryValue(keyBase, moduleKey,
- pathBuf, &modNameSize);
-
- if (regStat != ERROR_SUCCESS)
+ modNameSize = pathLen;
+ regStat = RegQueryValueW(keyBase, wmoduleKey,
+ pathBuf, &modNameSize);
+ if (regStat != ERROR_SUCCESS) {
+ Py_DECREF(moduleKey);
return NULL;
+ }
+ }
+ Py_DECREF(moduleKey);
+ if (modNameSize < 3) {
+ /* path shorter than "a.o" or negative length (cast to
+ size_t is wrong) */
+ return NULL;
}
/* use the file extension to locate the type entry. */
for (fdp = _PyImport_Filetab; fdp->suffix != NULL; fdp++) {
- size_t extLen = strlen(fdp->suffix);
- assert(modNameSize >= 0); /* else cast to size_t is wrong */
- if ((size_t)modNameSize > extLen &&
- strnicmp(pathBuf + ((size_t)modNameSize-extLen-1),
- fdp->suffix,
- extLen) == 0)
+ suffix = PyUnicode_FromString(fdp->suffix);
+ if (suffix == NULL)
+ return NULL;
+ wsuffix = PyUnicode_AsUnicodeAndSize(suffix, &extLen);
+ if (wsuffix == NULL) {
+ Py_DECREF(suffix);
+ return NULL;
+ }
+ if ((Py_ssize_t)modNameSize > extLen &&
+ _wcsnicmp(pathBuf + ((Py_ssize_t)modNameSize-extLen-1),
+ wsuffix,
+ extLen) == 0)
+ {
+ Py_DECREF(suffix);
break;
+ }
+ Py_DECREF(suffix);
}
if (fdp->suffix == NULL)
return NULL;
- fp = fopen(pathBuf, fdp->mode);
- if (fp != NULL)
- *ppFileDesc = fdp;
+ path = PyUnicode_FromWideChar(pathBuf, wcslen(pathBuf));
+ if (path == NULL)
+ return NULL;
+ fp = _Py_fopen(path, fdp->mode);
+ if (fp == NULL) {
+ Py_DECREF(path);
+ return NULL;
+ }
+ *pPath = path;
+ *ppFileDesc = fdp;
return fp;
}
diff --git a/PC/msvcrtmodule.c b/PC/msvcrtmodule.c
index 166df03..f277b0a 100755
--- a/PC/msvcrtmodule.c
+++ b/PC/msvcrtmodule.c
@@ -211,8 +211,7 @@ cannot be read with this function.");
static PyObject *
msvcrt_getwch(PyObject *self, PyObject *args)
{
- Py_UNICODE ch;
- Py_UNICODE u[1];
+ wchar_t ch;
if (!PyArg_ParseTuple(args, ":getwch"))
return NULL;
@@ -220,8 +219,7 @@ msvcrt_getwch(PyObject *self, PyObject *args)
Py_BEGIN_ALLOW_THREADS
ch = _getwch();
Py_END_ALLOW_THREADS
- u[0] = ch;
- return PyUnicode_FromUnicode(u, 1);
+ return PyUnicode_FromOrdinal(ch);
}
PyDoc_STRVAR(getwch_doc,
@@ -256,8 +254,7 @@ a printable character.");
static PyObject *
msvcrt_getwche(PyObject *self, PyObject *args)
{
- Py_UNICODE ch;
- Py_UNICODE s[1];
+ wchar_t ch;
if (!PyArg_ParseTuple(args, ":getwche"))
return NULL;
@@ -265,8 +262,7 @@ msvcrt_getwche(PyObject *self, PyObject *args)
Py_BEGIN_ALLOW_THREADS
ch = _getwche();
Py_END_ALLOW_THREADS
- s[0] = ch;
- return PyUnicode_FromUnicode(s, 1);
+ return PyUnicode_FromOrdinal(ch);
}
PyDoc_STRVAR(getwche_doc,
diff --git a/PC/os2emx/Makefile b/PC/os2emx/Makefile
index d9cded7..800610e 100644
--- a/PC/os2emx/Makefile
+++ b/PC/os2emx/Makefile
@@ -237,7 +237,7 @@ $(OUT)%$O: %.c
# Output file names
PYTHON_VER= 2.6
-PYTHON_LIB= python26
+PYTHON_LIB= python33
PYTHON.LIB= $(PYTHON_LIB)_s$A
PYTHON.IMPLIB= $(PYTHON_LIB)$A
ifeq ($(EXEOMF),yes)
diff --git a/PC/os2emx/README.os2emx b/PC/os2emx/README.os2emx
index fcf55d2..61cf6df 100644
--- a/PC/os2emx/README.os2emx
+++ b/PC/os2emx/README.os2emx
@@ -305,7 +305,7 @@ Procedure
to be installed in a directory other than the PYTHONHOME directory, set
the value of the Makefile variable EXE_DIR to the appropriate directory.
-3. If you wish the Python core DLL (python26.dll) to be installed in a
+3. If you wish the Python core DLL (python33.dll) to be installed in a
directory other than the directory in which the Python executables are
installed (by default, the PYTHONHOME directory), set the value of the
Makefile variable DLL_DIR to the appropriate directory. This DLL must
diff --git a/PC/os2emx/pyconfig.h b/PC/os2emx/pyconfig.h
index 380e19c..e56105a 100644
--- a/PC/os2emx/pyconfig.h
+++ b/PC/os2emx/pyconfig.h
@@ -1,6 +1,8 @@
#ifndef Py_CONFIG_H
#define Py_CONFIG_H
+#error "PEP 11: OS/2 is now unsupported, code will be removed in Python 3.4"
+
/* config.h.
* At some time in the past, generated automatically by/from configure.
* now maintained manually.
diff --git a/PC/os2emx/python27.def b/PC/os2emx/python33.def
index d87dd76..256726b 100644
--- a/PC/os2emx/python27.def
+++ b/PC/os2emx/python33.def
@@ -1,72 +1,72 @@
-LIBRARY python26 INITINSTANCE TERMINSTANCE
+LIBRARY python33 INITINSTANCE TERMINSTANCE
DESCRIPTION "Python 2.6 Core DLL"
PROTMODE
DATA MULTIPLE NONSHARED
EXPORTS
-; From python26_s.lib(config)
+; From python33_s.lib(config)
"_PyImport_Inittab"
-; From python26_s.lib(dlfcn)
+; From python33_s.lib(dlfcn)
; "dlopen"
; "dlsym"
; "dlclose"
; "dlerror"
-; From python26_s.lib(getpathp)
+; From python33_s.lib(getpathp)
"Py_GetProgramFullPath"
"Py_GetPrefix"
"Py_GetExecPrefix"
"Py_GetPath"
-; From python26_s.lib(getbuildinfo)
+; From python33_s.lib(getbuildinfo)
"Py_GetBuildInfo"
"_Py_svnversion"
-; From python26_s.lib(main)
+; From python33_s.lib(main)
"Py_Main"
"Py_GetArgcArgv"
-; From python26_s.lib(acceler)
+; From python33_s.lib(acceler)
"PyGrammar_AddAccelerators"
"PyGrammar_RemoveAccelerators"
-; From python26_s.lib(grammar1)
+; From python33_s.lib(grammar1)
"PyGrammar_FindDFA"
"PyGrammar_LabelRepr"
-; From python26_s.lib(listnode)
+; From python33_s.lib(listnode)
"PyNode_ListTree"
-; From python26_s.lib(node)
+; From python33_s.lib(node)
"PyNode_New"
"PyNode_AddChild"
"PyNode_Free"
-; From python26_s.lib(parser)
+; From python33_s.lib(parser)
"PyParser_AddToken"
"PyParser_New"
"PyParser_Delete"
-; From python26_s.lib(parsetok)
+; From python33_s.lib(parsetok)
"PyParser_ParseString"
"PyParser_ParseStringFlagsFilename"
"PyParser_ParseFile"
"PyParser_ParseFileFlags"
"PyParser_ParseStringFlags"
-; From python26_s.lib(bitset)
+; From python33_s.lib(bitset)
"_Py_newbitset"
"_Py_delbitset"
"_Py_addbit"
"_Py_samebitset"
"_Py_mergebitset"
-; From python26_s.lib(metagrammar)
+; From python33_s.lib(metagrammar)
"_Py_meta_grammar"
"Py_meta_grammar"
-; From python26_s.lib(tokenizer)
+; From python33_s.lib(tokenizer)
"PyToken_OneChar"
"PyToken_TwoChars"
"PyToken_ThreeChars"
@@ -76,14 +76,14 @@ EXPORTS
"PyTokenizer_Get"
"_PyParser_TokenNames"
-; From python26_s.lib(myreadline)
+; From python33_s.lib(myreadline)
"_PyOS_ReadlineTState"
"PyOS_ReadlineFunctionPointer"
"PyOS_StdioReadline"
"PyOS_Readline"
"PyOS_InputHook"
-; From python26_s.lib(abstract)
+; From python33_s.lib(abstract)
"_PyObject_LengthHint"
"PyMapping_Size"
"PyObject_CallMethod"
@@ -174,13 +174,13 @@ EXPORTS
"PyObject_IsInstance"
"PyObject_IsSubclass"
-; From python26_s.lib(boolobject)
+; From python33_s.lib(boolobject)
"PyBool_FromLong"
"PyBool_Type"
"_Py_ZeroStruct"
"_Py_TrueStruct"
-; From python26_s.lib(bufferobject)
+; From python33_s.lib(bufferobject)
"PyBuffer_FromObject"
"PyBuffer_FromReadWriteObject"
"PyBuffer_FromMemory"
@@ -188,13 +188,13 @@ EXPORTS
"PyBuffer_New"
"PyBuffer_Type"
-; From python26_s.lib(cellobject)
+; From python33_s.lib(cellobject)
"PyCell_New"
"PyCell_Get"
"PyCell_Set"
"PyCell_Type"
-; From python26_s.lib(classobject)
+; From python33_s.lib(classobject)
"PyClass_New"
"PyClass_IsSubclass"
"PyInstance_New"
@@ -209,7 +209,7 @@ EXPORTS
"PyInstance_Type"
"PyMethod_Type"
-; From python26_s.lib(capsule)
+; From python33_s.lib(capsule)
"PyCapsule_GetContext"
"PyCapsule_GetDestructor"
"PyCapsule_GetName"
@@ -222,7 +222,7 @@ EXPORTS
"PyCapsule_SetName"
"PyCapsule_SetPointer"
-; From python26_s.lib(cobject)
+; From python33_s.lib(cobject)
"PyCObject_FromVoidPtr"
"PyCObject_FromVoidPtrAndDesc"
"PyCObject_AsVoidPtr"
@@ -231,13 +231,13 @@ EXPORTS
"PyCObject_SetVoidPtr"
"PyCObject_Type"
-; From python26_s.lib(codeobject)
+; From python33_s.lib(codeobject)
"PyCode_New"
"PyCode_Addr2Line"
"PyCode_CheckLineNumber"
"PyCode_Type"
-; From python26_s.lib(complexobject)
+; From python33_s.lib(complexobject)
"_Py_c_pow"
"_Py_c_sum"
"_Py_c_diff"
@@ -251,7 +251,7 @@ EXPORTS
"PyComplex_AsCComplex"
"PyComplex_Type"
-; From python26_s.lib(descrobject)
+; From python33_s.lib(descrobject)
"PyWrapper_New"
"PyDescr_NewMethod"
"PyDescr_NewClassMethod"
@@ -262,7 +262,7 @@ EXPORTS
"PyWrapperDescr_Type"
"PyProperty_Type"
-; From python26_s.lib(dictobject)
+; From python33_s.lib(dictobject)
"PyDict_New"
"PyDict_GetItem"
"PyDict_SetItem"
@@ -286,11 +286,11 @@ EXPORTS
"PyDictIterValue_Type"
"PyDictIterItem_Type"
-; From python26_s.lib(enumobject)
+; From python33_s.lib(enumobject)
"PyEnum_Type"
"PyReversed_Type"
-; From python26_s.lib(fileobject)
+; From python33_s.lib(fileobject)
"PyFile_FromString"
"Py_UniversalNewlineFread"
"PyFile_GetLine"
@@ -306,7 +306,7 @@ EXPORTS
"PyFile_Name"
"PyFile_Type"
-; From python26_s.lib(floatobject)
+; From python33_s.lib(floatobject)
"PyFloat_FromString"
"PyFloat_AsDouble"
"PyFloat_Fini"
@@ -321,7 +321,7 @@ EXPORTS
"PyFloat_AsStringEx"
"PyFloat_Type"
-; From python26_s.lib(frameobject)
+; From python33_s.lib(frameobject)
"PyFrame_New"
"PyFrame_FastToLocals"
"PyFrame_LocalsToFast"
@@ -331,7 +331,7 @@ EXPORTS
"PyFrame_BlockPop"
"PyFrame_Type"
-; From python26_s.lib(funcobject)
+; From python33_s.lib(funcobject)
"PyFunction_New"
"PyFunction_GetCode"
"PyFunction_GetGlobals"
@@ -346,12 +346,12 @@ EXPORTS
"PyClassMethod_Type"
"PyStaticMethod_Type"
-; From python26_s.lib(genobject)
+; From python33_s.lib(genobject)
"PyGen_New"
"PyGen_NeedsFinalizing"
"PyGen_Type"
-; From python26_s.lib(intobject)
+; From python33_s.lib(intobject)
"PyInt_AsLong"
"PyInt_AsUnsignedLongMask"
"PyInt_AsUnsignedLongLongMask"
@@ -366,13 +366,13 @@ EXPORTS
"_PyInt_Init"
"PyInt_Type"
-; From python26_s.lib(iterobject)
+; From python33_s.lib(iterobject)
"PySeqIter_New"
"PyCallIter_New"
"PySeqIter_Type"
"PyCallIter_Type"
-; From python26_s.lib(listobject)
+; From python33_s.lib(listobject)
"PyList_New"
"PyList_Append"
"PyList_Size"
@@ -390,7 +390,7 @@ EXPORTS
"PyListIter_Type"
"PyListRevIter_Type"
-; From python26_s.lib(longobject)
+; From python33_s.lib(longobject)
"PyLong_FromDouble"
"PyLong_AsLong"
"_PyLong_AsSsize_t"
@@ -420,7 +420,7 @@ EXPORTS
"PyLong_Type"
"_PyLong_DigitValue"
-; From python26_s.lib(methodobject)
+; From python33_s.lib(methodobject)
"PyCFunction_Call"
"Py_FindMethodInChain"
"PyCFunction_GetFunction"
@@ -432,7 +432,7 @@ EXPORTS
"PyCFunction_New"
"PyCFunction_Type"
-; From python26_s.lib(moduleobject)
+; From python33_s.lib(moduleobject)
"PyModule_New"
"_PyModule_Clear"
"PyModule_GetDict"
@@ -440,7 +440,7 @@ EXPORTS
"PyModule_GetFilename"
"PyModule_Type"
-; From python26_s.lib(object)
+; From python33_s.lib(object)
"Py_DivisionWarningFlag"
"PyObject_Str"
"PyObject_Repr"
@@ -493,15 +493,15 @@ EXPORTS
"_PyTrash_delete_nesting"
"_PyTrash_delete_later"
-; From python26_s.lib(obmalloc)
+; From python33_s.lib(obmalloc)
"PyObject_Malloc"
"PyObject_Free"
"PyObject_Realloc"
-; From python26_s.lib(rangeobject)
+; From python33_s.lib(rangeobject)
"PyRange_Type"
-; From python26_s.lib(setobject)
+; From python33_s.lib(setobject)
"PySet_Pop"
"PySet_New"
"PyFrozenSet_New"
@@ -516,7 +516,7 @@ EXPORTS
"PySet_Type"
"PyFrozenSet_Type"
-; From python26_s.lib(sliceobject)
+; From python33_s.lib(sliceobject)
"_PySlice_FromIndices"
"PySlice_GetIndices"
"PySlice_GetIndicesEx"
@@ -524,7 +524,7 @@ EXPORTS
"_Py_EllipsisObject"
"PySlice_Type"
-; From python26_s.lib(stringobject)
+; From python33_s.lib(stringobject)
"PyString_FromStringAndSize"
"PyString_InternInPlace"
"PyString_FromString"
@@ -555,12 +555,12 @@ EXPORTS
"PyString_Type"
"PyBaseString_Type"
-; From python26_s.lib(structseq)
+; From python33_s.lib(structseq)
"PyStructSequence_InitType"
"PyStructSequence_New"
"PyStructSequence_UnnamedField"
-; From python26_s.lib(tupleobject)
+; From python33_s.lib(tupleobject)
"PyTuple_New"
"PyTuple_Pack"
"_PyTuple_Resize"
@@ -572,7 +572,7 @@ EXPORTS
"PyTuple_Type"
"PyTupleIter_Type"
-; From python26_s.lib(typeobject)
+; From python33_s.lib(typeobject)
"PyType_IsSubtype"
"_PyType_Lookup"
"PyType_Ready"
@@ -583,7 +583,7 @@ EXPORTS
"PyBaseObject_Type"
"PySuper_Type"
-; From python26_s.lib(unicodeobject)
+; From python33_s.lib(unicodeobject)
"PyUnicodeUCS2_Resize"
"PyUnicodeUCS2_FromOrdinal"
"PyUnicodeUCS2_FromObject"
@@ -649,7 +649,7 @@ EXPORTS
"PyUnicode_AsDecodedObject"
"PyUnicode_Type"
-; From python26_s.lib(unicodectype)
+; From python33_s.lib(unicodectype)
"_PyUnicode_TypeRecords"
"_PyUnicodeUCS2_ToNumeric"
"_PyUnicodeUCS2_IsLowercase"
@@ -667,7 +667,7 @@ EXPORTS
"_PyUnicodeUCS2_IsNumeric"
"_PyUnicodeUCS2_IsAlpha"
-; From python26_s.lib(weakrefobject)
+; From python33_s.lib(weakrefobject)
"PyWeakref_NewRef"
"PyWeakref_NewProxy"
"PyObject_ClearWeakRefs"
@@ -678,7 +678,7 @@ EXPORTS
"_PyWeakref_ProxyType"
"_PyWeakref_CallableProxyType"
-; From python26_s.lib(Python-ast)
+; From python33_s.lib(Python-ast)
; "init_ast"
"Module"
"Interactive"
@@ -737,18 +737,18 @@ EXPORTS
"alias"
"PyAST_mod2obj"
-; From python26_s.lib(asdl)
+; From python33_s.lib(asdl)
"asdl_seq_new"
"asdl_int_seq_new"
-; From python26_s.lib(ast)
+; From python33_s.lib(ast)
"PyAST_FromNode"
-; From python26_s.lib(bltinmodule)
+; From python33_s.lib(bltinmodule)
"_PyBuiltin_Init"
"Py_FileSystemDefaultEncoding"
-; From python26_s.lib(exceptions)
+; From python33_s.lib(exceptions)
"PyUnicodeEncodeError_GetStart"
"PyUnicodeDecodeError_GetStart"
"PyUnicodeEncodeError_GetEnd"
@@ -824,7 +824,7 @@ EXPORTS
"PyExc_ImportWarning"
"PyExc_MemoryErrorInst"
-; From python26_s.lib(ceval)
+; From python33_s.lib(ceval)
"PyEval_EvalFrameEx"
"PyEval_CallObjectWithKeywords"
"PyEval_EvalCodeEx"
@@ -863,13 +863,13 @@ EXPORTS
"_Py_CheckInterval"
"_Py_Ticker"
-; From python26_s.lib(compile)
+; From python33_s.lib(compile)
"_Py_Mangle"
"PyAST_Compile"
"PyNode_Compile"
"Py_OptimizeFlag"
-; From python26_s.lib(codecs)
+; From python33_s.lib(codecs)
"_PyCodec_Lookup"
"PyCodec_Encode"
"PyCodec_Decode"
@@ -888,7 +888,7 @@ EXPORTS
"PyCodec_LookupError"
"PyCodec_StrictErrors"
-; From python26_s.lib(errors)
+; From python33_s.lib(errors)
"PyErr_SetNone"
"PyErr_SetString"
"PyErr_GivenExceptionMatches"
@@ -914,16 +914,16 @@ EXPORTS
"PyErr_Warn"
"PyErr_WarnExplicit"
-; From python26_s.lib(frozen)
+; From python33_s.lib(frozen)
"PyImport_FrozenModules"
-; From python26_s.lib(frozenmain)
+; From python33_s.lib(frozenmain)
"Py_FrozenMain"
-; From python26_s.lib(future)
+; From python33_s.lib(future)
"PyFuture_FromAST"
-; From python26_s.lib(getargs)
+; From python33_s.lib(getargs)
"PyArg_Parse"
"_PyArg_Parse_SizeT"
"PyArg_ParseTuple"
@@ -937,22 +937,22 @@ EXPORTS
"_PyArg_VaParse_SizeT"
"_PyArg_VaParseTupleAndKeywords_SizeT"
-; From python26_s.lib(getcompiler)
+; From python33_s.lib(getcompiler)
"Py_GetCompiler"
-; From python26_s.lib(getcopyright)
+; From python33_s.lib(getcopyright)
"Py_GetCopyright"
-; From python26_s.lib(getplatform)
+; From python33_s.lib(getplatform)
"Py_GetPlatform"
-; From python26_s.lib(getversion)
+; From python33_s.lib(getversion)
"Py_GetVersion"
-; From python26_s.lib(graminit)
+; From python33_s.lib(graminit)
"_PyParser_Grammar"
-; From python26_s.lib(import)
+; From python33_s.lib(import)
"_PyImport_Init"
"_PyImportHooks_Init"
"PyImport_ImportModule"
@@ -979,10 +979,10 @@ EXPORTS
"PyImport_Inittab"
"_PyImport_Filetab"
-; From python26_s.lib(importdl)
+; From python33_s.lib(importdl)
"_PyImport_LoadDynamicModule"
-; From python26_s.lib(marshal)
+; From python33_s.lib(marshal)
"PyMarshal_ReadLongFromFile"
"PyMarshal_WriteObjectToString"
"PyMarshal_WriteLongToFile"
@@ -993,7 +993,7 @@ EXPORTS
"PyMarshal_ReadObjectFromString"
"PyMarshal_Init"
-; From python26_s.lib(modsupport)
+; From python33_s.lib(modsupport)
"Py_InitModule4"
"Py_BuildValue"
"_Py_BuildValue_SizeT"
@@ -1006,24 +1006,24 @@ EXPORTS
"PyModule_AddStringConstant"
"_Py_PackageContext"
-; From python26_s.lib(mysnprintf)
+; From python33_s.lib(mysnprintf)
"PyOS_snprintf"
"PyOS_vsnprintf"
-; From python26_s.lib(mystrtoul)
+; From python33_s.lib(mystrtoul)
"PyOS_strtoul"
"PyOS_strtol"
-; From python26_s.lib(pyarena)
+; From python33_s.lib(pyarena)
"PyArena_New"
"PyArena_Free"
"PyArena_Malloc"
"PyArena_AddPyObject"
-; From python26_s.lib(pyfpe)
+; From python33_s.lib(pyfpe)
"PyFPE_dummy"
-; From python26_s.lib(pystate)
+; From python33_s.lib(pystate)
"PyInterpreterState_Clear"
"PyThreadState_Clear"
"_PyThread_CurrentFrames"
@@ -1048,7 +1048,7 @@ EXPORTS
"_PyThreadState_Current"
"_PyThreadState_GetFrame"
-; From python26_s.lib(pythonrun)
+; From python33_s.lib(pythonrun)
"Py_IgnoreEnvironmentFlag"
"Py_DebugFlag"
"Py_VerboseFlag"
@@ -1110,20 +1110,20 @@ EXPORTS
"Py_UnicodeFlag"
"_Py_QnewFlag"
-; From python26_s.lib(structmember)
+; From python33_s.lib(structmember)
"PyMember_Get"
"PyMember_GetOne"
"PyMember_SetOne"
"PyMember_Set"
-; From python26_s.lib(symtable)
+; From python33_s.lib(symtable)
"PySymtable_Build"
"PySymtable_Free"
"PyST_GetScope"
"PySymtable_Lookup"
"PySTEntry_Type"
-; From python26_s.lib(sysmodule)
+; From python33_s.lib(sysmodule)
"_PySys_Init"
"PySys_WriteStderr"
"PySys_SetPath"
@@ -1137,22 +1137,22 @@ EXPORTS
"PySys_ResetWarnOptions"
"PySys_AddWarnOption"
-; From python26_s.lib(traceback)
+; From python33_s.lib(traceback)
"PyTraceBack_Here"
"PyTraceBack_Print"
"PyTraceBack_Type"
-; From python26_s.lib(getopt)
+; From python33_s.lib(getopt)
"_PyOS_GetOpt"
"_PyOS_opterr"
"_PyOS_optind"
"_PyOS_optarg"
-; From python26_s.lib(dynload_shlib)
+; From python33_s.lib(dynload_shlib)
"_PyImport_DynLoadFiletab"
"_PyImport_GetDynLoadFunc"
-; From python26_s.lib(thread)
+; From python33_s.lib(thread)
"PyThread_delete_key_value"
"PyThread_init_thread"
"PyThread_start_new_thread"
@@ -1169,7 +1169,7 @@ EXPORTS
"PyThread_set_key_value"
"PyThread_get_key_value"
-; From python26_s.lib(gcmodule)
+; From python33_s.lib(gcmodule)
; "initgc"
"_PyObject_GC_New"
"_PyObject_GC_NewVar"
@@ -1185,7 +1185,7 @@ EXPORTS
"_PyObject_GC_Del"
"_PyGC_generation0"
-; From python26_s.lib(signalmodule)
+; From python33_s.lib(signalmodule)
; "initsignal"
"PyErr_CheckSignals"
"PyErr_SetInterrupt"
@@ -1194,121 +1194,121 @@ EXPORTS
"PyOS_InitInterrupts"
"PyOS_AfterFork"
-; From python26_s.lib(posixmodule)
+; From python33_s.lib(posixmodule)
; "initos2"
-; From python26_s.lib(_threadmodule)
+; From python33_s.lib(_threadmodule)
; "init_thread"
-; From python26_s.lib(arraymodule)
+; From python33_s.lib(arraymodule)
; "initarray"
; "array_methods"
-; From python26_s.lib(binascii)
+; From python33_s.lib(binascii)
; "initbinascii"
-; From python26_s.lib(cmathmodule)
+; From python33_s.lib(cmathmodule)
; "initcmath"
-; From python26_s.lib(_codecsmodule)
+; From python33_s.lib(_codecsmodule)
; "init_codecs"
-; From python26_s.lib(collectionsmodule)
+; From python33_s.lib(collectionsmodule)
; "initcollections"
"dequeiter_type"
"dequereviter_type"
-; From python26_s.lib(cPickle)
+; From python33_s.lib(cPickle)
; "initcPickle"
; "fast_save_leave"
-; From python26_s.lib(_csv)
+; From python33_s.lib(_csv)
; "init_csv"
-; From python26_s.lib(datetimemodule)
+; From python33_s.lib(datetimemodule)
; "initdatetime"
-; From python26_s.lib(dlmodule)
+; From python33_s.lib(dlmodule)
; "initdl"
-; From python26_s.lib(errnomodule)
+; From python33_s.lib(errnomodule)
; "initerrno"
-; From python26_s.lib(fcntlmodule)
+; From python33_s.lib(fcntlmodule)
; "initfcntl"
-; From python26_s.lib(_functoolsmodule)
+; From python33_s.lib(_functoolsmodule)
; "init_functools"
-; From python26_s.lib(_heapqmodule)
+; From python33_s.lib(_heapqmodule)
; "init_heapq"
-; From python26_s.lib(imageop)
+; From python33_s.lib(imageop)
; "initimageop"
-; From python26_s.lib(itertoolsmodule)
+; From python33_s.lib(itertoolsmodule)
; "inititertools"
-; From python26_s.lib(_localemodule)
+; From python33_s.lib(_localemodule)
; "init_locale"
-; From python26_s.lib(mathmodule)
+; From python33_s.lib(mathmodule)
; "initmath"
-; From python26_s.lib(md5)
+; From python33_s.lib(md5)
"md5_finish"
"md5_init"
"md5_append"
-; From python26_s.lib(md5module)
+; From python33_s.lib(md5module)
; "init_md5"
-; From python26_s.lib(operator)
+; From python33_s.lib(operator)
; "initoperator"
-; From python26_s.lib(_randommodule)
+; From python33_s.lib(_randommodule)
; "init_random"
-; From python26_s.lib(rgbimgmodule)
+; From python33_s.lib(rgbimgmodule)
; "initrgbimg"
-; From python26_s.lib(shamodule)
+; From python33_s.lib(shamodule)
; "init_sha"
-; From python26_s.lib(sha256module)
+; From python33_s.lib(sha256module)
; "init_sha256"
-; From python26_s.lib(sha512module)
+; From python33_s.lib(sha512module)
; "init_sha512"
-; From python26_s.lib(_sre)
+; From python33_s.lib(_sre)
; "init_sre"
-; From python26_s.lib(stropmodule)
+; From python33_s.lib(stropmodule)
; "initstrop"
-; From python26_s.lib(_struct)
+; From python33_s.lib(_struct)
; "init_struct"
-; From python26_s.lib(symtablemodule)
+; From python33_s.lib(symtablemodule)
; "init_symtable"
-; From python26_s.lib(termios)
+; From python33_s.lib(termios)
; "inittermios"
-; From python26_s.lib(timemodule)
+; From python33_s.lib(timemodule)
; "inittime"
"_PyTime_DoubleToTimet"
; "inittimezone"
-; From python26_s.lib(timingmodule)
+; From python33_s.lib(timingmodule)
; "inittiming"
-; From python26_s.lib(_weakref)
+; From python33_s.lib(_weakref)
; "init_weakref"
-; From python26_s.lib(xxsubtype)
+; From python33_s.lib(xxsubtype)
; "initxxsubtype"
-; From python26_s.lib(zipimport)
+; From python33_s.lib(zipimport)
; "initzipimport"
diff --git a/PC/pyconfig.h b/PC/pyconfig.h
index 138d8fa..347f1cc 100644
--- a/PC/pyconfig.h
+++ b/PC/pyconfig.h
@@ -319,11 +319,11 @@ Py_NO_ENABLE_SHARED to find out. Also support MS_NO_COREDLL for b/w compat */
their Makefile (other compilers are generally
taken care of by distutils.) */
# if defined(_DEBUG)
-# pragma comment(lib,"python32_d.lib")
+# pragma comment(lib,"python33_d.lib")
# elif defined(Py_LIMITED_API)
# pragma comment(lib,"python3.lib")
# else
-# pragma comment(lib,"python32.lib")
+# pragma comment(lib,"python33.lib")
# endif /* _DEBUG */
# endif /* _MSC_VER */
# endif /* Py_BUILD_CORE */
@@ -550,10 +550,6 @@ Py_NO_ENABLE_SHARED to find out. Also support MS_NO_COREDLL for b/w compat */
/* Define if you want to use the GNU readline library */
/* #define WITH_READLINE 1 */
-/* Define as the size of the unicode type. */
-/* This is enough for unicodeobject.h to do the "right thing" on Windows. */
-#define Py_UNICODE_SIZE 2
-
/* Use Python's own small-block memory-allocator. */
#define WITH_PYMALLOC 1
@@ -714,9 +710,6 @@ Py_NO_ENABLE_SHARED to find out. Also support MS_NO_COREDLL for b/w compat */
/* Define if you have the <sys/utsname.h> header file. */
/* #define HAVE_SYS_UTSNAME_H 1 */
-/* Define if you have the <thread.h> header file. */
-/* #undef HAVE_THREAD_H */
-
/* Define if you have the <unistd.h> header file. */
/* #define HAVE_UNISTD_H 1 */
diff --git a/PC/python3.def b/PC/python3.def
index a845335..54b288f 100644
--- a/PC/python3.def
+++ b/PC/python3.def
@@ -1,689 +1,689 @@
LIBRARY "python3"
EXPORTS
- PyArg_Parse=python32.PyArg_Parse
- PyArg_ParseTuple=python32.PyArg_ParseTuple
- PyArg_ParseTupleAndKeywords=python32.PyArg_ParseTupleAndKeywords
- PyArg_UnpackTuple=python32.PyArg_UnpackTuple
- PyArg_VaParse=python32.PyArg_VaParse
- PyArg_VaParseTupleAndKeywords=python32.PyArg_VaParseTupleAndKeywords
- PyArg_ValidateKeywordArguments=python32.PyArg_ValidateKeywordArguments
- PyBaseObject_Type=python32.PyBaseObject_Type DATA
- PyBool_FromLong=python32.PyBool_FromLong
- PyBool_Type=python32.PyBool_Type DATA
- PyByteArrayIter_Type=python32.PyByteArrayIter_Type DATA
- PyByteArray_AsString=python32.PyByteArray_AsString
- PyByteArray_Concat=python32.PyByteArray_Concat
- PyByteArray_FromObject=python32.PyByteArray_FromObject
- PyByteArray_FromStringAndSize=python32.PyByteArray_FromStringAndSize
- PyByteArray_Resize=python32.PyByteArray_Resize
- PyByteArray_Size=python32.PyByteArray_Size
- PyByteArray_Type=python32.PyByteArray_Type DATA
- PyBytesIter_Type=python32.PyBytesIter_Type DATA
- PyBytes_AsString=python32.PyBytes_AsString
- PyBytes_AsStringAndSize=python32.PyBytes_AsStringAndSize
- PyBytes_Concat=python32.PyBytes_Concat
- PyBytes_ConcatAndDel=python32.PyBytes_ConcatAndDel
- PyBytes_DecodeEscape=python32.PyBytes_DecodeEscape
- PyBytes_FromFormat=python32.PyBytes_FromFormat
- PyBytes_FromFormatV=python32.PyBytes_FromFormatV
- PyBytes_FromObject=python32.PyBytes_FromObject
- PyBytes_FromString=python32.PyBytes_FromString
- PyBytes_FromStringAndSize=python32.PyBytes_FromStringAndSize
- PyBytes_Repr=python32.PyBytes_Repr
- PyBytes_Size=python32.PyBytes_Size
- PyBytes_Type=python32.PyBytes_Type DATA
- PyCFunction_Call=python32.PyCFunction_Call
- PyCFunction_ClearFreeList=python32.PyCFunction_ClearFreeList
- PyCFunction_GetFlags=python32.PyCFunction_GetFlags
- PyCFunction_GetFunction=python32.PyCFunction_GetFunction
- PyCFunction_GetSelf=python32.PyCFunction_GetSelf
- PyCFunction_NewEx=python32.PyCFunction_NewEx
- PyCFunction_Type=python32.PyCFunction_Type DATA
- PyCallIter_New=python32.PyCallIter_New
- PyCallIter_Type=python32.PyCallIter_Type DATA
- PyCallable_Check=python32.PyCallable_Check
- PyCapsule_GetContext=python32.PyCapsule_GetContext
- PyCapsule_GetDestructor=python32.PyCapsule_GetDestructor
- PyCapsule_GetName=python32.PyCapsule_GetName
- PyCapsule_GetPointer=python32.PyCapsule_GetPointer
- PyCapsule_Import=python32.PyCapsule_Import
- PyCapsule_IsValid=python32.PyCapsule_IsValid
- PyCapsule_New=python32.PyCapsule_New
- PyCapsule_SetContext=python32.PyCapsule_SetContext
- PyCapsule_SetDestructor=python32.PyCapsule_SetDestructor
- PyCapsule_SetName=python32.PyCapsule_SetName
- PyCapsule_SetPointer=python32.PyCapsule_SetPointer
- PyCapsule_Type=python32.PyCapsule_Type DATA
- PyClassMethodDescr_Type=python32.PyClassMethodDescr_Type DATA
- PyCodec_BackslashReplaceErrors=python32.PyCodec_BackslashReplaceErrors
- PyCodec_Decode=python32.PyCodec_Decode
- PyCodec_Decoder=python32.PyCodec_Decoder
- PyCodec_Encode=python32.PyCodec_Encode
- PyCodec_Encoder=python32.PyCodec_Encoder
- PyCodec_IgnoreErrors=python32.PyCodec_IgnoreErrors
- PyCodec_IncrementalDecoder=python32.PyCodec_IncrementalDecoder
- PyCodec_IncrementalEncoder=python32.PyCodec_IncrementalEncoder
- PyCodec_KnownEncoding=python32.PyCodec_KnownEncoding
- PyCodec_LookupError=python32.PyCodec_LookupError
- PyCodec_Register=python32.PyCodec_Register
- PyCodec_RegisterError=python32.PyCodec_RegisterError
- PyCodec_ReplaceErrors=python32.PyCodec_ReplaceErrors
- PyCodec_StreamReader=python32.PyCodec_StreamReader
- PyCodec_StreamWriter=python32.PyCodec_StreamWriter
- PyCodec_StrictErrors=python32.PyCodec_StrictErrors
- PyCodec_XMLCharRefReplaceErrors=python32.PyCodec_XMLCharRefReplaceErrors
- PyComplex_FromDoubles=python32.PyComplex_FromDoubles
- PyComplex_ImagAsDouble=python32.PyComplex_ImagAsDouble
- PyComplex_RealAsDouble=python32.PyComplex_RealAsDouble
- PyComplex_Type=python32.PyComplex_Type DATA
- PyDescr_NewClassMethod=python32.PyDescr_NewClassMethod
- PyDescr_NewGetSet=python32.PyDescr_NewGetSet
- PyDescr_NewMember=python32.PyDescr_NewMember
- PyDescr_NewMethod=python32.PyDescr_NewMethod
- PyDictItems_Type=python32.PyDictItems_Type DATA
- PyDictIterItem_Type=python32.PyDictIterItem_Type DATA
- PyDictIterKey_Type=python32.PyDictIterKey_Type DATA
- PyDictIterValue_Type=python32.PyDictIterValue_Type DATA
- PyDictKeys_Type=python32.PyDictKeys_Type DATA
- PyDictProxy_New=python32.PyDictProxy_New
- PyDictProxy_Type=python32.PyDictProxy_Type DATA
- PyDictValues_Type=python32.PyDictValues_Type DATA
- PyDict_Clear=python32.PyDict_Clear
- PyDict_Contains=python32.PyDict_Contains
- PyDict_Copy=python32.PyDict_Copy
- PyDict_DelItem=python32.PyDict_DelItem
- PyDict_DelItemString=python32.PyDict_DelItemString
- PyDict_GetItem=python32.PyDict_GetItem
- PyDict_GetItemString=python32.PyDict_GetItemString
- PyDict_GetItemWithError=python32.PyDict_GetItemWithError
- PyDict_Items=python32.PyDict_Items
- PyDict_Keys=python32.PyDict_Keys
- PyDict_Merge=python32.PyDict_Merge
- PyDict_MergeFromSeq2=python32.PyDict_MergeFromSeq2
- PyDict_New=python32.PyDict_New
- PyDict_Next=python32.PyDict_Next
- PyDict_SetItem=python32.PyDict_SetItem
- PyDict_SetItemString=python32.PyDict_SetItemString
- PyDict_Size=python32.PyDict_Size
- PyDict_Type=python32.PyDict_Type DATA
- PyDict_Update=python32.PyDict_Update
- PyDict_Values=python32.PyDict_Values
- PyEllipsis_Type=python32.PyEllipsis_Type DATA
- PyEnum_Type=python32.PyEnum_Type DATA
- PyErr_BadArgument=python32.PyErr_BadArgument
- PyErr_BadInternalCall=python32.PyErr_BadInternalCall
- PyErr_CheckSignals=python32.PyErr_CheckSignals
- PyErr_Clear=python32.PyErr_Clear
- PyErr_Display=python32.PyErr_Display
- PyErr_ExceptionMatches=python32.PyErr_ExceptionMatches
- PyErr_Fetch=python32.PyErr_Fetch
- PyErr_Format=python32.PyErr_Format
- PyErr_GivenExceptionMatches=python32.PyErr_GivenExceptionMatches
- PyErr_NewException=python32.PyErr_NewException
- PyErr_NewExceptionWithDoc=python32.PyErr_NewExceptionWithDoc
- PyErr_NoMemory=python32.PyErr_NoMemory
- PyErr_NormalizeException=python32.PyErr_NormalizeException
- PyErr_Occurred=python32.PyErr_Occurred
- PyErr_Print=python32.PyErr_Print
- PyErr_PrintEx=python32.PyErr_PrintEx
- PyErr_ProgramText=python32.PyErr_ProgramText
- PyErr_Restore=python32.PyErr_Restore
- PyErr_SetFromErrno=python32.PyErr_SetFromErrno
- PyErr_SetFromErrnoWithFilename=python32.PyErr_SetFromErrnoWithFilename
- PyErr_SetFromErrnoWithFilenameObject=python32.PyErr_SetFromErrnoWithFilenameObject
- PyErr_SetInterrupt=python32.PyErr_SetInterrupt
- PyErr_SetNone=python32.PyErr_SetNone
- PyErr_SetObject=python32.PyErr_SetObject
- PyErr_SetString=python32.PyErr_SetString
- PyErr_SyntaxLocation=python32.PyErr_SyntaxLocation
- PyErr_WarnEx=python32.PyErr_WarnEx
- PyErr_WarnExplicit=python32.PyErr_WarnExplicit
- PyErr_WarnFormat=python32.PyErr_WarnFormat
- PyErr_WriteUnraisable=python32.PyErr_WriteUnraisable
- PyEval_AcquireLock=python32.PyEval_AcquireLock
- PyEval_AcquireThread=python32.PyEval_AcquireThread
- PyEval_CallFunction=python32.PyEval_CallFunction
- PyEval_CallMethod=python32.PyEval_CallMethod
- PyEval_CallObjectWithKeywords=python32.PyEval_CallObjectWithKeywords
- PyEval_EvalCode=python32.PyEval_EvalCode
- PyEval_EvalCodeEx=python32.PyEval_EvalCodeEx
- PyEval_EvalFrame=python32.PyEval_EvalFrame
- PyEval_EvalFrameEx=python32.PyEval_EvalFrameEx
- PyEval_GetBuiltins=python32.PyEval_GetBuiltins
- PyEval_GetCallStats=python32.PyEval_GetCallStats
- PyEval_GetFrame=python32.PyEval_GetFrame
- PyEval_GetFuncDesc=python32.PyEval_GetFuncDesc
- PyEval_GetFuncName=python32.PyEval_GetFuncName
- PyEval_GetGlobals=python32.PyEval_GetGlobals
- PyEval_GetLocals=python32.PyEval_GetLocals
- PyEval_InitThreads=python32.PyEval_InitThreads
- PyEval_ReInitThreads=python32.PyEval_ReInitThreads
- PyEval_ReleaseLock=python32.PyEval_ReleaseLock
- PyEval_ReleaseThread=python32.PyEval_ReleaseThread
- PyEval_RestoreThread=python32.PyEval_RestoreThread
- PyEval_SaveThread=python32.PyEval_SaveThread
- PyEval_ThreadsInitialized=python32.PyEval_ThreadsInitialized
- PyExc_ArithmeticError=python32.PyExc_ArithmeticError DATA
- PyExc_AssertionError=python32.PyExc_AssertionError DATA
- PyExc_AttributeError=python32.PyExc_AttributeError DATA
- PyExc_BaseException=python32.PyExc_BaseException DATA
- PyExc_BufferError=python32.PyExc_BufferError DATA
- PyExc_BytesWarning=python32.PyExc_BytesWarning DATA
- PyExc_DeprecationWarning=python32.PyExc_DeprecationWarning DATA
- PyExc_EOFError=python32.PyExc_EOFError DATA
- PyExc_EnvironmentError=python32.PyExc_EnvironmentError DATA
- PyExc_Exception=python32.PyExc_Exception DATA
- PyExc_FloatingPointError=python32.PyExc_FloatingPointError DATA
- PyExc_FutureWarning=python32.PyExc_FutureWarning DATA
- PyExc_GeneratorExit=python32.PyExc_GeneratorExit DATA
- PyExc_IOError=python32.PyExc_IOError DATA
- PyExc_ImportError=python32.PyExc_ImportError DATA
- PyExc_ImportWarning=python32.PyExc_ImportWarning DATA
- PyExc_IndentationError=python32.PyExc_IndentationError DATA
- PyExc_IndexError=python32.PyExc_IndexError DATA
- PyExc_KeyError=python32.PyExc_KeyError DATA
- PyExc_KeyboardInterrupt=python32.PyExc_KeyboardInterrupt DATA
- PyExc_LookupError=python32.PyExc_LookupError DATA
- PyExc_MemoryError=python32.PyExc_MemoryError DATA
- PyExc_MemoryErrorInst=python32.PyExc_MemoryErrorInst DATA
- PyExc_NameError=python32.PyExc_NameError DATA
- PyExc_NotImplementedError=python32.PyExc_NotImplementedError DATA
- PyExc_OSError=python32.PyExc_OSError DATA
- PyExc_OverflowError=python32.PyExc_OverflowError DATA
- PyExc_PendingDeprecationWarning=python32.PyExc_PendingDeprecationWarning DATA
- PyExc_RecursionErrorInst=python32.PyExc_RecursionErrorInst DATA
- PyExc_ReferenceError=python32.PyExc_ReferenceError DATA
- PyExc_RuntimeError=python32.PyExc_RuntimeError DATA
- PyExc_RuntimeWarning=python32.PyExc_RuntimeWarning DATA
- PyExc_StopIteration=python32.PyExc_StopIteration DATA
- PyExc_SyntaxError=python32.PyExc_SyntaxError DATA
- PyExc_SyntaxWarning=python32.PyExc_SyntaxWarning DATA
- PyExc_SystemError=python32.PyExc_SystemError DATA
- PyExc_SystemExit=python32.PyExc_SystemExit DATA
- PyExc_TabError=python32.PyExc_TabError DATA
- PyExc_TypeError=python32.PyExc_TypeError DATA
- PyExc_UnboundLocalError=python32.PyExc_UnboundLocalError DATA
- PyExc_UnicodeDecodeError=python32.PyExc_UnicodeDecodeError DATA
- PyExc_UnicodeEncodeError=python32.PyExc_UnicodeEncodeError DATA
- PyExc_UnicodeError=python32.PyExc_UnicodeError DATA
- PyExc_UnicodeTranslateError=python32.PyExc_UnicodeTranslateError DATA
- PyExc_UnicodeWarning=python32.PyExc_UnicodeWarning DATA
- PyExc_UserWarning=python32.PyExc_UserWarning DATA
- PyExc_ValueError=python32.PyExc_ValueError DATA
- PyExc_Warning=python32.PyExc_Warning DATA
- PyExc_ZeroDivisionError=python32.PyExc_ZeroDivisionError DATA
- PyException_GetCause=python32.PyException_GetCause
- PyException_GetContext=python32.PyException_GetContext
- PyException_GetTraceback=python32.PyException_GetTraceback
- PyException_SetCause=python32.PyException_SetCause
- PyException_SetContext=python32.PyException_SetContext
- PyException_SetTraceback=python32.PyException_SetTraceback
- PyFile_FromFd=python32.PyFile_FromFd
- PyFile_GetLine=python32.PyFile_GetLine
- PyFile_WriteObject=python32.PyFile_WriteObject
- PyFile_WriteString=python32.PyFile_WriteString
- PyFilter_Type=python32.PyFilter_Type DATA
- PyFloat_AsDouble=python32.PyFloat_AsDouble
- PyFloat_FromDouble=python32.PyFloat_FromDouble
- PyFloat_FromString=python32.PyFloat_FromString
- PyFloat_GetInfo=python32.PyFloat_GetInfo
- PyFloat_GetMax=python32.PyFloat_GetMax
- PyFloat_GetMin=python32.PyFloat_GetMin
- PyFloat_Type=python32.PyFloat_Type DATA
- PyFrozenSet_New=python32.PyFrozenSet_New
- PyFrozenSet_Type=python32.PyFrozenSet_Type DATA
- PyGC_Collect=python32.PyGC_Collect
- PyGILState_Ensure=python32.PyGILState_Ensure
- PyGILState_GetThisThreadState=python32.PyGILState_GetThisThreadState
- PyGILState_Release=python32.PyGILState_Release
- PyGetSetDescr_Type=python32.PyGetSetDescr_Type DATA
- PyImport_AddModule=python32.PyImport_AddModule
- PyImport_AppendInittab=python32.PyImport_AppendInittab
- PyImport_Cleanup=python32.PyImport_Cleanup
- PyImport_ExecCodeModule=python32.PyImport_ExecCodeModule
- PyImport_ExecCodeModuleEx=python32.PyImport_ExecCodeModuleEx
- PyImport_ExecCodeModuleWithPathnames=python32.PyImport_ExecCodeModuleWithPathnames
- PyImport_GetImporter=python32.PyImport_GetImporter
- PyImport_GetMagicNumber=python32.PyImport_GetMagicNumber
- PyImport_GetMagicTag=python32.PyImport_GetMagicTag
- PyImport_GetModuleDict=python32.PyImport_GetModuleDict
- PyImport_Import=python32.PyImport_Import
- PyImport_ImportFrozenModule=python32.PyImport_ImportFrozenModule
- PyImport_ImportModule=python32.PyImport_ImportModule
- PyImport_ImportModuleLevel=python32.PyImport_ImportModuleLevel
- PyImport_ImportModuleNoBlock=python32.PyImport_ImportModuleNoBlock
- PyImport_ReloadModule=python32.PyImport_ReloadModule
- PyInterpreterState_Clear=python32.PyInterpreterState_Clear
- PyInterpreterState_Delete=python32.PyInterpreterState_Delete
- PyInterpreterState_New=python32.PyInterpreterState_New
- PyIter_Next=python32.PyIter_Next
- PyListIter_Type=python32.PyListIter_Type DATA
- PyListRevIter_Type=python32.PyListRevIter_Type DATA
- PyList_Append=python32.PyList_Append
- PyList_AsTuple=python32.PyList_AsTuple
- PyList_GetItem=python32.PyList_GetItem
- PyList_GetSlice=python32.PyList_GetSlice
- PyList_Insert=python32.PyList_Insert
- PyList_New=python32.PyList_New
- PyList_Reverse=python32.PyList_Reverse
- PyList_SetItem=python32.PyList_SetItem
- PyList_SetSlice=python32.PyList_SetSlice
- PyList_Size=python32.PyList_Size
- PyList_Sort=python32.PyList_Sort
- PyList_Type=python32.PyList_Type DATA
- PyLongRangeIter_Type=python32.PyLongRangeIter_Type DATA
- PyLong_AsDouble=python32.PyLong_AsDouble
- PyLong_AsLong=python32.PyLong_AsLong
- PyLong_AsLongAndOverflow=python32.PyLong_AsLongAndOverflow
- PyLong_AsLongLong=python32.PyLong_AsLongLong
- PyLong_AsLongLongAndOverflow=python32.PyLong_AsLongLongAndOverflow
- PyLong_AsSize_t=python32.PyLong_AsSize_t
- PyLong_AsSsize_t=python32.PyLong_AsSsize_t
- PyLong_AsUnsignedLong=python32.PyLong_AsUnsignedLong
- PyLong_AsUnsignedLongLong=python32.PyLong_AsUnsignedLongLong
- PyLong_AsUnsignedLongLongMask=python32.PyLong_AsUnsignedLongLongMask
- PyLong_AsUnsignedLongMask=python32.PyLong_AsUnsignedLongMask
- PyLong_AsVoidPtr=python32.PyLong_AsVoidPtr
- PyLong_FromDouble=python32.PyLong_FromDouble
- PyLong_FromLong=python32.PyLong_FromLong
- PyLong_FromLongLong=python32.PyLong_FromLongLong
- PyLong_FromSize_t=python32.PyLong_FromSize_t
- PyLong_FromSsize_t=python32.PyLong_FromSsize_t
- PyLong_FromString=python32.PyLong_FromString
- PyLong_FromUnsignedLong=python32.PyLong_FromUnsignedLong
- PyLong_FromUnsignedLongLong=python32.PyLong_FromUnsignedLongLong
- PyLong_FromVoidPtr=python32.PyLong_FromVoidPtr
- PyLong_GetInfo=python32.PyLong_GetInfo
- PyLong_Type=python32.PyLong_Type DATA
- PyMap_Type=python32.PyMap_Type DATA
- PyMapping_Check=python32.PyMapping_Check
- PyMapping_GetItemString=python32.PyMapping_GetItemString
- PyMapping_HasKey=python32.PyMapping_HasKey
- PyMapping_HasKeyString=python32.PyMapping_HasKeyString
- PyMapping_Items=python32.PyMapping_Items
- PyMapping_Keys=python32.PyMapping_Keys
- PyMapping_Length=python32.PyMapping_Length
- PyMapping_SetItemString=python32.PyMapping_SetItemString
- PyMapping_Size=python32.PyMapping_Size
- PyMapping_Values=python32.PyMapping_Values
- PyMem_Free=python32.PyMem_Free
- PyMem_Malloc=python32.PyMem_Malloc
- PyMem_Realloc=python32.PyMem_Realloc
- PyMemberDescr_Type=python32.PyMemberDescr_Type DATA
- PyMemoryView_FromObject=python32.PyMemoryView_FromObject
- PyMemoryView_GetContiguous=python32.PyMemoryView_GetContiguous
- PyMemoryView_Type=python32.PyMemoryView_Type DATA
- PyMethodDescr_Type=python32.PyMethodDescr_Type DATA
- PyModule_AddIntConstant=python32.PyModule_AddIntConstant
- PyModule_AddObject=python32.PyModule_AddObject
- PyModule_AddStringConstant=python32.PyModule_AddStringConstant
- PyModule_Create2=python32.PyModule_Create2
- PyModule_GetDef=python32.PyModule_GetDef
- PyModule_GetDict=python32.PyModule_GetDict
- PyModule_GetFilename=python32.PyModule_GetFilename
- PyModule_GetFilenameObject=python32.PyModule_GetFilenameObject
- PyModule_GetName=python32.PyModule_GetName
- PyModule_GetState=python32.PyModule_GetState
- PyModule_New=python32.PyModule_New
- PyModule_Type=python32.PyModule_Type DATA
- PyNullImporter_Type=python32.PyNullImporter_Type DATA
- PyNumber_Absolute=python32.PyNumber_Absolute
- PyNumber_Add=python32.PyNumber_Add
- PyNumber_And=python32.PyNumber_And
- PyNumber_AsSsize_t=python32.PyNumber_AsSsize_t
- PyNumber_Check=python32.PyNumber_Check
- PyNumber_Divmod=python32.PyNumber_Divmod
- PyNumber_Float=python32.PyNumber_Float
- PyNumber_FloorDivide=python32.PyNumber_FloorDivide
- PyNumber_InPlaceAdd=python32.PyNumber_InPlaceAdd
- PyNumber_InPlaceAnd=python32.PyNumber_InPlaceAnd
- PyNumber_InPlaceFloorDivide=python32.PyNumber_InPlaceFloorDivide
- PyNumber_InPlaceLshift=python32.PyNumber_InPlaceLshift
- PyNumber_InPlaceMultiply=python32.PyNumber_InPlaceMultiply
- PyNumber_InPlaceOr=python32.PyNumber_InPlaceOr
- PyNumber_InPlacePower=python32.PyNumber_InPlacePower
- PyNumber_InPlaceRemainder=python32.PyNumber_InPlaceRemainder
- PyNumber_InPlaceRshift=python32.PyNumber_InPlaceRshift
- PyNumber_InPlaceSubtract=python32.PyNumber_InPlaceSubtract
- PyNumber_InPlaceTrueDivide=python32.PyNumber_InPlaceTrueDivide
- PyNumber_InPlaceXor=python32.PyNumber_InPlaceXor
- PyNumber_Index=python32.PyNumber_Index
- PyNumber_Invert=python32.PyNumber_Invert
- PyNumber_Long=python32.PyNumber_Long
- PyNumber_Lshift=python32.PyNumber_Lshift
- PyNumber_Multiply=python32.PyNumber_Multiply
- PyNumber_Negative=python32.PyNumber_Negative
- PyNumber_Or=python32.PyNumber_Or
- PyNumber_Positive=python32.PyNumber_Positive
- PyNumber_Power=python32.PyNumber_Power
- PyNumber_Remainder=python32.PyNumber_Remainder
- PyNumber_Rshift=python32.PyNumber_Rshift
- PyNumber_Subtract=python32.PyNumber_Subtract
- PyNumber_ToBase=python32.PyNumber_ToBase
- PyNumber_TrueDivide=python32.PyNumber_TrueDivide
- PyNumber_Xor=python32.PyNumber_Xor
- PyOS_AfterFork=python32.PyOS_AfterFork
- PyOS_InitInterrupts=python32.PyOS_InitInterrupts
- PyOS_InputHook=python32.PyOS_InputHook DATA
- PyOS_InterruptOccurred=python32.PyOS_InterruptOccurred
- PyOS_ReadlineFunctionPointer=python32.PyOS_ReadlineFunctionPointer DATA
- PyOS_double_to_string=python32.PyOS_double_to_string
- PyOS_getsig=python32.PyOS_getsig
- PyOS_mystricmp=python32.PyOS_mystricmp
- PyOS_mystrnicmp=python32.PyOS_mystrnicmp
- PyOS_setsig=python32.PyOS_setsig
- PyOS_snprintf=python32.PyOS_snprintf
- PyOS_string_to_double=python32.PyOS_string_to_double
- PyOS_strtol=python32.PyOS_strtol
- PyOS_strtoul=python32.PyOS_strtoul
- PyOS_vsnprintf=python32.PyOS_vsnprintf
- PyObject_ASCII=python32.PyObject_ASCII
- PyObject_AsCharBuffer=python32.PyObject_AsCharBuffer
- PyObject_AsFileDescriptor=python32.PyObject_AsFileDescriptor
- PyObject_AsReadBuffer=python32.PyObject_AsReadBuffer
- PyObject_AsWriteBuffer=python32.PyObject_AsWriteBuffer
- PyObject_Bytes=python32.PyObject_Bytes
- PyObject_Call=python32.PyObject_Call
- PyObject_CallFunction=python32.PyObject_CallFunction
- PyObject_CallFunctionObjArgs=python32.PyObject_CallFunctionObjArgs
- PyObject_CallMethod=python32.PyObject_CallMethod
- PyObject_CallMethodObjArgs=python32.PyObject_CallMethodObjArgs
- PyObject_CallObject=python32.PyObject_CallObject
- PyObject_CheckReadBuffer=python32.PyObject_CheckReadBuffer
- PyObject_ClearWeakRefs=python32.PyObject_ClearWeakRefs
- PyObject_DelItem=python32.PyObject_DelItem
- PyObject_DelItemString=python32.PyObject_DelItemString
- PyObject_Dir=python32.PyObject_Dir
- PyObject_Format=python32.PyObject_Format
- PyObject_Free=python32.PyObject_Free
- PyObject_GC_Del=python32.PyObject_GC_Del
- PyObject_GC_Track=python32.PyObject_GC_Track
- PyObject_GC_UnTrack=python32.PyObject_GC_UnTrack
- PyObject_GenericGetAttr=python32.PyObject_GenericGetAttr
- PyObject_GenericSetAttr=python32.PyObject_GenericSetAttr
- PyObject_GetAttr=python32.PyObject_GetAttr
- PyObject_GetAttrString=python32.PyObject_GetAttrString
- PyObject_GetItem=python32.PyObject_GetItem
- PyObject_GetIter=python32.PyObject_GetIter
- PyObject_HasAttr=python32.PyObject_HasAttr
- PyObject_HasAttrString=python32.PyObject_HasAttrString
- PyObject_Hash=python32.PyObject_Hash
- PyObject_HashNotImplemented=python32.PyObject_HashNotImplemented
- PyObject_Init=python32.PyObject_Init
- PyObject_InitVar=python32.PyObject_InitVar
- PyObject_IsInstance=python32.PyObject_IsInstance
- PyObject_IsSubclass=python32.PyObject_IsSubclass
- PyObject_IsTrue=python32.PyObject_IsTrue
- PyObject_Length=python32.PyObject_Length
- PyObject_Malloc=python32.PyObject_Malloc
- PyObject_Not=python32.PyObject_Not
- PyObject_Realloc=python32.PyObject_Realloc
- PyObject_Repr=python32.PyObject_Repr
- PyObject_RichCompare=python32.PyObject_RichCompare
- PyObject_RichCompareBool=python32.PyObject_RichCompareBool
- PyObject_SelfIter=python32.PyObject_SelfIter
- PyObject_SetAttr=python32.PyObject_SetAttr
- PyObject_SetAttrString=python32.PyObject_SetAttrString
- PyObject_SetItem=python32.PyObject_SetItem
- PyObject_Size=python32.PyObject_Size
- PyObject_Str=python32.PyObject_Str
- PyObject_Type=python32.PyObject_Type DATA
- PyParser_SimpleParseFileFlags=python32.PyParser_SimpleParseFileFlags
- PyParser_SimpleParseStringFlags=python32.PyParser_SimpleParseStringFlags
- PyProperty_Type=python32.PyProperty_Type DATA
- PyRangeIter_Type=python32.PyRangeIter_Type DATA
- PyRange_Type=python32.PyRange_Type DATA
- PyReversed_Type=python32.PyReversed_Type DATA
- PySeqIter_New=python32.PySeqIter_New
- PySeqIter_Type=python32.PySeqIter_Type DATA
- PySequence_Check=python32.PySequence_Check
- PySequence_Concat=python32.PySequence_Concat
- PySequence_Contains=python32.PySequence_Contains
- PySequence_Count=python32.PySequence_Count
- PySequence_DelItem=python32.PySequence_DelItem
- PySequence_DelSlice=python32.PySequence_DelSlice
- PySequence_Fast=python32.PySequence_Fast
- PySequence_GetItem=python32.PySequence_GetItem
- PySequence_GetSlice=python32.PySequence_GetSlice
- PySequence_In=python32.PySequence_In
- PySequence_InPlaceConcat=python32.PySequence_InPlaceConcat
- PySequence_InPlaceRepeat=python32.PySequence_InPlaceRepeat
- PySequence_Index=python32.PySequence_Index
- PySequence_Length=python32.PySequence_Length
- PySequence_List=python32.PySequence_List
- PySequence_Repeat=python32.PySequence_Repeat
- PySequence_SetItem=python32.PySequence_SetItem
- PySequence_SetSlice=python32.PySequence_SetSlice
- PySequence_Size=python32.PySequence_Size
- PySequence_Tuple=python32.PySequence_Tuple
- PySetIter_Type=python32.PySetIter_Type DATA
- PySet_Add=python32.PySet_Add
- PySet_Clear=python32.PySet_Clear
- PySet_Contains=python32.PySet_Contains
- PySet_Discard=python32.PySet_Discard
- PySet_New=python32.PySet_New
- PySet_Pop=python32.PySet_Pop
- PySet_Size=python32.PySet_Size
- PySet_Type=python32.PySet_Type DATA
- PySlice_GetIndices=python32.PySlice_GetIndices
- PySlice_GetIndicesEx=python32.PySlice_GetIndicesEx
- PySlice_New=python32.PySlice_New
- PySlice_Type=python32.PySlice_Type DATA
- PySortWrapper_Type=python32.PySortWrapper_Type DATA
- PyState_FindModule=python32.PyState_FindModule
- PyStructSequence_GetItem=python32.PyStructSequence_GetItem
- PyStructSequence_New=python32.PyStructSequence_New
- PyStructSequence_NewType=python32.PyStructSequence_NewType
- PyStructSequence_SetItem=python32.PyStructSequence_SetItem
- PySuper_Type=python32.PySuper_Type DATA
- PySys_AddWarnOption=python32.PySys_AddWarnOption
- PySys_AddWarnOptionUnicode=python32.PySys_AddWarnOptionUnicode
- PySys_FormatStderr=python32.PySys_FormatStderr
- PySys_FormatStdout=python32.PySys_FormatStdout
- PySys_GetObject=python32.PySys_GetObject
- PySys_HasWarnOptions=python32.PySys_HasWarnOptions
- PySys_ResetWarnOptions=python32.PySys_ResetWarnOptions
- PySys_SetArgv=python32.PySys_SetArgv
- PySys_SetArgvEx=python32.PySys_SetArgvEx
- PySys_SetObject=python32.PySys_SetObject
- PySys_SetPath=python32.PySys_SetPath
- PySys_WriteStderr=python32.PySys_WriteStderr
- PySys_WriteStdout=python32.PySys_WriteStdout
- PyThreadState_Clear=python32.PyThreadState_Clear
- PyThreadState_Delete=python32.PyThreadState_Delete
- PyThreadState_DeleteCurrent=python32.PyThreadState_DeleteCurrent
- PyThreadState_Get=python32.PyThreadState_Get
- PyThreadState_GetDict=python32.PyThreadState_GetDict
- PyThreadState_New=python32.PyThreadState_New
- PyThreadState_SetAsyncExc=python32.PyThreadState_SetAsyncExc
- PyThreadState_Swap=python32.PyThreadState_Swap
- PyTraceBack_Here=python32.PyTraceBack_Here
- PyTraceBack_Print=python32.PyTraceBack_Print
- PyTraceBack_Type=python32.PyTraceBack_Type DATA
- PyTupleIter_Type=python32.PyTupleIter_Type DATA
- PyTuple_ClearFreeList=python32.PyTuple_ClearFreeList
- PyTuple_GetItem=python32.PyTuple_GetItem
- PyTuple_GetSlice=python32.PyTuple_GetSlice
- PyTuple_New=python32.PyTuple_New
- PyTuple_Pack=python32.PyTuple_Pack
- PyTuple_SetItem=python32.PyTuple_SetItem
- PyTuple_Size=python32.PyTuple_Size
- PyTuple_Type=python32.PyTuple_Type DATA
- PyType_ClearCache=python32.PyType_ClearCache
- PyType_FromSpec=python32.PyType_FromSpec
- PyType_GenericAlloc=python32.PyType_GenericAlloc
- PyType_GenericNew=python32.PyType_GenericNew
- PyType_GetFlags=python32.PyType_GetFlags
- PyType_IsSubtype=python32.PyType_IsSubtype
- PyType_Modified=python32.PyType_Modified
- PyType_Ready=python32.PyType_Ready
- PyType_Type=python32.PyType_Type DATA
- PyUnicodeDecodeError_Create=python32.PyUnicodeDecodeError_Create
- PyUnicodeDecodeError_GetEncoding=python32.PyUnicodeDecodeError_GetEncoding
- PyUnicodeDecodeError_GetEnd=python32.PyUnicodeDecodeError_GetEnd
- PyUnicodeDecodeError_GetObject=python32.PyUnicodeDecodeError_GetObject
- PyUnicodeDecodeError_GetReason=python32.PyUnicodeDecodeError_GetReason
- PyUnicodeDecodeError_GetStart=python32.PyUnicodeDecodeError_GetStart
- PyUnicodeDecodeError_SetEnd=python32.PyUnicodeDecodeError_SetEnd
- PyUnicodeDecodeError_SetReason=python32.PyUnicodeDecodeError_SetReason
- PyUnicodeDecodeError_SetStart=python32.PyUnicodeDecodeError_SetStart
- PyUnicodeEncodeError_GetEncoding=python32.PyUnicodeEncodeError_GetEncoding
- PyUnicodeEncodeError_GetEnd=python32.PyUnicodeEncodeError_GetEnd
- PyUnicodeEncodeError_GetObject=python32.PyUnicodeEncodeError_GetObject
- PyUnicodeEncodeError_GetReason=python32.PyUnicodeEncodeError_GetReason
- PyUnicodeEncodeError_GetStart=python32.PyUnicodeEncodeError_GetStart
- PyUnicodeEncodeError_SetEnd=python32.PyUnicodeEncodeError_SetEnd
- PyUnicodeEncodeError_SetReason=python32.PyUnicodeEncodeError_SetReason
- PyUnicodeEncodeError_SetStart=python32.PyUnicodeEncodeError_SetStart
- PyUnicodeIter_Type=python32.PyUnicodeIter_Type DATA
- PyUnicodeTranslateError_GetEnd=python32.PyUnicodeTranslateError_GetEnd
- PyUnicodeTranslateError_GetObject=python32.PyUnicodeTranslateError_GetObject
- PyUnicodeTranslateError_GetReason=python32.PyUnicodeTranslateError_GetReason
- PyUnicodeTranslateError_GetStart=python32.PyUnicodeTranslateError_GetStart
- PyUnicodeTranslateError_SetEnd=python32.PyUnicodeTranslateError_SetEnd
- PyUnicodeTranslateError_SetReason=python32.PyUnicodeTranslateError_SetReason
- PyUnicodeTranslateError_SetStart=python32.PyUnicodeTranslateError_SetStart
- PyUnicode_Append=python32.PyUnicodeUCS2_Append
- PyUnicode_AppendAndDel=python32.PyUnicodeUCS2_AppendAndDel
- PyUnicode_AsASCIIString=python32.PyUnicodeUCS2_AsASCIIString
- PyUnicode_AsCharmapString=python32.PyUnicodeUCS2_AsCharmapString
- PyUnicode_AsDecodedObject=python32.PyUnicodeUCS2_AsDecodedObject
- PyUnicode_AsDecodedUnicode=python32.PyUnicodeUCS2_AsDecodedUnicode
- PyUnicode_AsEncodedObject=python32.PyUnicodeUCS2_AsEncodedObject
- PyUnicode_AsEncodedString=python32.PyUnicodeUCS2_AsEncodedString
- PyUnicode_AsEncodedUnicode=python32.PyUnicodeUCS2_AsEncodedUnicode
- PyUnicode_AsLatin1String=python32.PyUnicodeUCS2_AsLatin1String
- PyUnicode_AsRawUnicodeEscapeString=python32.PyUnicodeUCS2_AsRawUnicodeEscapeString
- PyUnicode_AsUTF16String=python32.PyUnicodeUCS2_AsUTF16String
- PyUnicode_AsUTF32String=python32.PyUnicodeUCS2_AsUTF32String
- PyUnicode_AsUTF8String=python32.PyUnicodeUCS2_AsUTF8String
- PyUnicode_AsUnicodeEscapeString=python32.PyUnicodeUCS2_AsUnicodeEscapeString
- PyUnicode_AsWideChar=python32.PyUnicodeUCS2_AsWideChar
- PyUnicode_ClearFreelist=python32.PyUnicodeUCS2_ClearFreelist
- PyUnicode_Compare=python32.PyUnicodeUCS2_Compare
- PyUnicode_Concat=python32.PyUnicodeUCS2_Concat
- PyUnicode_Contains=python32.PyUnicodeUCS2_Contains
- PyUnicode_Count=python32.PyUnicodeUCS2_Count
- PyUnicode_Decode=python32.PyUnicodeUCS2_Decode
- PyUnicode_DecodeASCII=python32.PyUnicodeUCS2_DecodeASCII
- PyUnicode_DecodeCharmap=python32.PyUnicodeUCS2_DecodeCharmap
- PyUnicode_DecodeFSDefault=python32.PyUnicodeUCS2_DecodeFSDefault
- PyUnicode_DecodeFSDefaultAndSize=python32.PyUnicodeUCS2_DecodeFSDefaultAndSize
- PyUnicode_DecodeLatin1=python32.PyUnicodeUCS2_DecodeLatin1
- PyUnicode_DecodeRawUnicodeEscape=python32.PyUnicodeUCS2_DecodeRawUnicodeEscape
- PyUnicode_DecodeUTF16=python32.PyUnicodeUCS2_DecodeUTF16
- PyUnicode_DecodeUTF16Stateful=python32.PyUnicodeUCS2_DecodeUTF16Stateful
- PyUnicode_DecodeUTF32=python32.PyUnicodeUCS2_DecodeUTF32
- PyUnicode_DecodeUTF32Stateful=python32.PyUnicodeUCS2_DecodeUTF32Stateful
- PyUnicode_DecodeUTF8=python32.PyUnicodeUCS2_DecodeUTF8
- PyUnicode_DecodeUTF8Stateful=python32.PyUnicodeUCS2_DecodeUTF8Stateful
- PyUnicode_DecodeUnicodeEscape=python32.PyUnicodeUCS2_DecodeUnicodeEscape
- PyUnicode_FSConverter=python32.PyUnicodeUCS2_FSConverter
- PyUnicode_FSDecoder=python32.PyUnicodeUCS2_FSDecoder
- PyUnicode_Find=python32.PyUnicodeUCS2_Find
- PyUnicode_Format=python32.PyUnicodeUCS2_Format
- PyUnicode_FromEncodedObject=python32.PyUnicodeUCS2_FromEncodedObject
- PyUnicode_FromFormat=python32.PyUnicodeUCS2_FromFormat
- PyUnicode_FromFormatV=python32.PyUnicodeUCS2_FromFormatV
- PyUnicode_FromObject=python32.PyUnicodeUCS2_FromObject
- PyUnicode_FromOrdinal=python32.PyUnicodeUCS2_FromOrdinal
- PyUnicode_FromString=python32.PyUnicodeUCS2_FromString
- PyUnicode_FromStringAndSize=python32.PyUnicodeUCS2_FromStringAndSize
- PyUnicode_FromWideChar=python32.PyUnicodeUCS2_FromWideChar
- PyUnicode_GetDefaultEncoding=python32.PyUnicodeUCS2_GetDefaultEncoding
- PyUnicode_GetSize=python32.PyUnicodeUCS2_GetSize
- PyUnicode_IsIdentifier=python32.PyUnicodeUCS2_IsIdentifier
- PyUnicode_Join=python32.PyUnicodeUCS2_Join
- PyUnicode_Partition=python32.PyUnicodeUCS2_Partition
- PyUnicode_RPartition=python32.PyUnicodeUCS2_RPartition
- PyUnicode_RSplit=python32.PyUnicodeUCS2_RSplit
- PyUnicode_Replace=python32.PyUnicodeUCS2_Replace
- PyUnicode_Resize=python32.PyUnicodeUCS2_Resize
- PyUnicode_RichCompare=python32.PyUnicodeUCS2_RichCompare
- PyUnicode_SetDefaultEncoding=python32.PyUnicodeUCS2_SetDefaultEncoding
- PyUnicode_Split=python32.PyUnicodeUCS2_Split
- PyUnicode_Splitlines=python32.PyUnicodeUCS2_Splitlines
- PyUnicode_Tailmatch=python32.PyUnicodeUCS2_Tailmatch
- PyUnicode_Translate=python32.PyUnicodeUCS2_Translate
- PyUnicode_BuildEncodingMap=python32.PyUnicode_BuildEncodingMap
- PyUnicode_CompareWithASCIIString=python32.PyUnicode_CompareWithASCIIString
- PyUnicode_DecodeUTF7=python32.PyUnicode_DecodeUTF7
- PyUnicode_DecodeUTF7Stateful=python32.PyUnicode_DecodeUTF7Stateful
- PyUnicode_EncodeFSDefault=python32.PyUnicode_EncodeFSDefault
- PyUnicode_InternFromString=python32.PyUnicode_InternFromString
- PyUnicode_InternImmortal=python32.PyUnicode_InternImmortal
- PyUnicode_InternInPlace=python32.PyUnicode_InternInPlace
- PyUnicode_Type=python32.PyUnicode_Type DATA
- PyWeakref_GetObject=python32.PyWeakref_GetObject DATA
- PyWeakref_NewProxy=python32.PyWeakref_NewProxy
- PyWeakref_NewRef=python32.PyWeakref_NewRef
- PyWrapperDescr_Type=python32.PyWrapperDescr_Type DATA
- PyWrapper_New=python32.PyWrapper_New
- PyZip_Type=python32.PyZip_Type DATA
- Py_AddPendingCall=python32.Py_AddPendingCall
- Py_AtExit=python32.Py_AtExit
- Py_BuildValue=python32.Py_BuildValue
- Py_CompileString=python32.Py_CompileString
- Py_DecRef=python32.Py_DecRef
- Py_EndInterpreter=python32.Py_EndInterpreter
- Py_Exit=python32.Py_Exit
- Py_FatalError=python32.Py_FatalError
- Py_FileSystemDefaultEncoding=python32.Py_FileSystemDefaultEncoding DATA
- Py_Finalize=python32.Py_Finalize
- Py_GetBuildInfo=python32.Py_GetBuildInfo
- Py_GetCompiler=python32.Py_GetCompiler
- Py_GetCopyright=python32.Py_GetCopyright
- Py_GetExecPrefix=python32.Py_GetExecPrefix
- Py_GetPath=python32.Py_GetPath
- Py_GetPlatform=python32.Py_GetPlatform
- Py_GetPrefix=python32.Py_GetPrefix
- Py_GetProgramFullPath=python32.Py_GetProgramFullPath
- Py_GetProgramName=python32.Py_GetProgramName
- Py_GetPythonHome=python32.Py_GetPythonHome
- Py_GetRecursionLimit=python32.Py_GetRecursionLimit
- Py_GetVersion=python32.Py_GetVersion
- Py_HasFileSystemDefaultEncoding=python32.Py_HasFileSystemDefaultEncoding DATA
- Py_IncRef=python32.Py_IncRef
- Py_Initialize=python32.Py_Initialize
- Py_InitializeEx=python32.Py_InitializeEx
- Py_IsInitialized=python32.Py_IsInitialized
- Py_Main=python32.Py_Main
- Py_MakePendingCalls=python32.Py_MakePendingCalls
- Py_NewInterpreter=python32.Py_NewInterpreter
- Py_ReprEnter=python32.Py_ReprEnter
- Py_ReprLeave=python32.Py_ReprLeave
- Py_SetProgramName=python32.Py_SetProgramName
- Py_SetPythonHome=python32.Py_SetPythonHome
- Py_SetRecursionLimit=python32.Py_SetRecursionLimit
- Py_SymtableString=python32.Py_SymtableString
- Py_VaBuildValue=python32.Py_VaBuildValue
- _PyErr_BadInternalCall=python32._PyErr_BadInternalCall
- _PyObject_CallFunction_SizeT=python32._PyObject_CallFunction_SizeT
- _PyObject_CallMethod_SizeT=python32._PyObject_CallMethod_SizeT
- _PyObject_GC_Malloc=python32._PyObject_GC_Malloc
- _PyObject_GC_New=python32._PyObject_GC_New
- _PyObject_GC_NewVar=python32._PyObject_GC_NewVar
- _PyObject_GC_Resize=python32._PyObject_GC_Resize
- _PyObject_New=python32._PyObject_New
- _PyObject_NewVar=python32._PyObject_NewVar
- _PyState_AddModule=python32._PyState_AddModule
- _PyThreadState_Init=python32._PyThreadState_Init
- _PyThreadState_Prealloc=python32._PyThreadState_Prealloc
- _PyTrash_delete_later=python32._PyTrash_delete_later DATA
- _PyTrash_delete_nesting=python32._PyTrash_delete_nesting DATA
- _PyTrash_deposit_object=python32._PyTrash_deposit_object
- _PyTrash_destroy_chain=python32._PyTrash_destroy_chain
- _PyWeakref_CallableProxyType=python32._PyWeakref_CallableProxyType DATA
- _PyWeakref_ProxyType=python32._PyWeakref_ProxyType DATA
- _PyWeakref_RefType=python32._PyWeakref_RefType DATA
- _Py_BuildValue_SizeT=python32._Py_BuildValue_SizeT
- _Py_CheckRecursionLimit=python32._Py_CheckRecursionLimit DATA
- _Py_CheckRecursiveCall=python32._Py_CheckRecursiveCall
- _Py_Dealloc=python32._Py_Dealloc
- _Py_EllipsisObject=python32._Py_EllipsisObject DATA
- _Py_FalseStruct=python32._Py_FalseStruct DATA
- _Py_NoneStruct=python32._Py_NoneStruct DATA
- _Py_NotImplementedStruct=python32._Py_NotImplementedStruct DATA
- _Py_SwappedOp=python32._Py_SwappedOp DATA
- _Py_TrueStruct=python32._Py_TrueStruct DATA
- _Py_VaBuildValue_SizeT=python32._Py_VaBuildValue_SizeT
+ PyArg_Parse=python33.PyArg_Parse
+ PyArg_ParseTuple=python33.PyArg_ParseTuple
+ PyArg_ParseTupleAndKeywords=python33.PyArg_ParseTupleAndKeywords
+ PyArg_UnpackTuple=python33.PyArg_UnpackTuple
+ PyArg_VaParse=python33.PyArg_VaParse
+ PyArg_VaParseTupleAndKeywords=python33.PyArg_VaParseTupleAndKeywords
+ PyArg_ValidateKeywordArguments=python33.PyArg_ValidateKeywordArguments
+ PyBaseObject_Type=python33.PyBaseObject_Type DATA
+ PyBool_FromLong=python33.PyBool_FromLong
+ PyBool_Type=python33.PyBool_Type DATA
+ PyByteArrayIter_Type=python33.PyByteArrayIter_Type DATA
+ PyByteArray_AsString=python33.PyByteArray_AsString
+ PyByteArray_Concat=python33.PyByteArray_Concat
+ PyByteArray_FromObject=python33.PyByteArray_FromObject
+ PyByteArray_FromStringAndSize=python33.PyByteArray_FromStringAndSize
+ PyByteArray_Resize=python33.PyByteArray_Resize
+ PyByteArray_Size=python33.PyByteArray_Size
+ PyByteArray_Type=python33.PyByteArray_Type DATA
+ PyBytesIter_Type=python33.PyBytesIter_Type DATA
+ PyBytes_AsString=python33.PyBytes_AsString
+ PyBytes_AsStringAndSize=python33.PyBytes_AsStringAndSize
+ PyBytes_Concat=python33.PyBytes_Concat
+ PyBytes_ConcatAndDel=python33.PyBytes_ConcatAndDel
+ PyBytes_DecodeEscape=python33.PyBytes_DecodeEscape
+ PyBytes_FromFormat=python33.PyBytes_FromFormat
+ PyBytes_FromFormatV=python33.PyBytes_FromFormatV
+ PyBytes_FromObject=python33.PyBytes_FromObject
+ PyBytes_FromString=python33.PyBytes_FromString
+ PyBytes_FromStringAndSize=python33.PyBytes_FromStringAndSize
+ PyBytes_Repr=python33.PyBytes_Repr
+ PyBytes_Size=python33.PyBytes_Size
+ PyBytes_Type=python33.PyBytes_Type DATA
+ PyCFunction_Call=python33.PyCFunction_Call
+ PyCFunction_ClearFreeList=python33.PyCFunction_ClearFreeList
+ PyCFunction_GetFlags=python33.PyCFunction_GetFlags
+ PyCFunction_GetFunction=python33.PyCFunction_GetFunction
+ PyCFunction_GetSelf=python33.PyCFunction_GetSelf
+ PyCFunction_NewEx=python33.PyCFunction_NewEx
+ PyCFunction_Type=python33.PyCFunction_Type DATA
+ PyCallIter_New=python33.PyCallIter_New
+ PyCallIter_Type=python33.PyCallIter_Type DATA
+ PyCallable_Check=python33.PyCallable_Check
+ PyCapsule_GetContext=python33.PyCapsule_GetContext
+ PyCapsule_GetDestructor=python33.PyCapsule_GetDestructor
+ PyCapsule_GetName=python33.PyCapsule_GetName
+ PyCapsule_GetPointer=python33.PyCapsule_GetPointer
+ PyCapsule_Import=python33.PyCapsule_Import
+ PyCapsule_IsValid=python33.PyCapsule_IsValid
+ PyCapsule_New=python33.PyCapsule_New
+ PyCapsule_SetContext=python33.PyCapsule_SetContext
+ PyCapsule_SetDestructor=python33.PyCapsule_SetDestructor
+ PyCapsule_SetName=python33.PyCapsule_SetName
+ PyCapsule_SetPointer=python33.PyCapsule_SetPointer
+ PyCapsule_Type=python33.PyCapsule_Type DATA
+ PyClassMethodDescr_Type=python33.PyClassMethodDescr_Type DATA
+ PyCodec_BackslashReplaceErrors=python33.PyCodec_BackslashReplaceErrors
+ PyCodec_Decode=python33.PyCodec_Decode
+ PyCodec_Decoder=python33.PyCodec_Decoder
+ PyCodec_Encode=python33.PyCodec_Encode
+ PyCodec_Encoder=python33.PyCodec_Encoder
+ PyCodec_IgnoreErrors=python33.PyCodec_IgnoreErrors
+ PyCodec_IncrementalDecoder=python33.PyCodec_IncrementalDecoder
+ PyCodec_IncrementalEncoder=python33.PyCodec_IncrementalEncoder
+ PyCodec_KnownEncoding=python33.PyCodec_KnownEncoding
+ PyCodec_LookupError=python33.PyCodec_LookupError
+ PyCodec_Register=python33.PyCodec_Register
+ PyCodec_RegisterError=python33.PyCodec_RegisterError
+ PyCodec_ReplaceErrors=python33.PyCodec_ReplaceErrors
+ PyCodec_StreamReader=python33.PyCodec_StreamReader
+ PyCodec_StreamWriter=python33.PyCodec_StreamWriter
+ PyCodec_StrictErrors=python33.PyCodec_StrictErrors
+ PyCodec_XMLCharRefReplaceErrors=python33.PyCodec_XMLCharRefReplaceErrors
+ PyComplex_FromDoubles=python33.PyComplex_FromDoubles
+ PyComplex_ImagAsDouble=python33.PyComplex_ImagAsDouble
+ PyComplex_RealAsDouble=python33.PyComplex_RealAsDouble
+ PyComplex_Type=python33.PyComplex_Type DATA
+ PyDescr_NewClassMethod=python33.PyDescr_NewClassMethod
+ PyDescr_NewGetSet=python33.PyDescr_NewGetSet
+ PyDescr_NewMember=python33.PyDescr_NewMember
+ PyDescr_NewMethod=python33.PyDescr_NewMethod
+ PyDictItems_Type=python33.PyDictItems_Type DATA
+ PyDictIterItem_Type=python33.PyDictIterItem_Type DATA
+ PyDictIterKey_Type=python33.PyDictIterKey_Type DATA
+ PyDictIterValue_Type=python33.PyDictIterValue_Type DATA
+ PyDictKeys_Type=python33.PyDictKeys_Type DATA
+ PyDictProxy_New=python33.PyDictProxy_New
+ PyDictProxy_Type=python33.PyDictProxy_Type DATA
+ PyDictValues_Type=python33.PyDictValues_Type DATA
+ PyDict_Clear=python33.PyDict_Clear
+ PyDict_Contains=python33.PyDict_Contains
+ PyDict_Copy=python33.PyDict_Copy
+ PyDict_DelItem=python33.PyDict_DelItem
+ PyDict_DelItemString=python33.PyDict_DelItemString
+ PyDict_GetItem=python33.PyDict_GetItem
+ PyDict_GetItemString=python33.PyDict_GetItemString
+ PyDict_GetItemWithError=python33.PyDict_GetItemWithError
+ PyDict_Items=python33.PyDict_Items
+ PyDict_Keys=python33.PyDict_Keys
+ PyDict_Merge=python33.PyDict_Merge
+ PyDict_MergeFromSeq2=python33.PyDict_MergeFromSeq2
+ PyDict_New=python33.PyDict_New
+ PyDict_Next=python33.PyDict_Next
+ PyDict_SetItem=python33.PyDict_SetItem
+ PyDict_SetItemString=python33.PyDict_SetItemString
+ PyDict_Size=python33.PyDict_Size
+ PyDict_Type=python33.PyDict_Type DATA
+ PyDict_Update=python33.PyDict_Update
+ PyDict_Values=python33.PyDict_Values
+ PyEllipsis_Type=python33.PyEllipsis_Type DATA
+ PyEnum_Type=python33.PyEnum_Type DATA
+ PyErr_BadArgument=python33.PyErr_BadArgument
+ PyErr_BadInternalCall=python33.PyErr_BadInternalCall
+ PyErr_CheckSignals=python33.PyErr_CheckSignals
+ PyErr_Clear=python33.PyErr_Clear
+ PyErr_Display=python33.PyErr_Display
+ PyErr_ExceptionMatches=python33.PyErr_ExceptionMatches
+ PyErr_Fetch=python33.PyErr_Fetch
+ PyErr_Format=python33.PyErr_Format
+ PyErr_GivenExceptionMatches=python33.PyErr_GivenExceptionMatches
+ PyErr_NewException=python33.PyErr_NewException
+ PyErr_NewExceptionWithDoc=python33.PyErr_NewExceptionWithDoc
+ PyErr_NoMemory=python33.PyErr_NoMemory
+ PyErr_NormalizeException=python33.PyErr_NormalizeException
+ PyErr_Occurred=python33.PyErr_Occurred
+ PyErr_Print=python33.PyErr_Print
+ PyErr_PrintEx=python33.PyErr_PrintEx
+ PyErr_ProgramText=python33.PyErr_ProgramText
+ PyErr_Restore=python33.PyErr_Restore
+ PyErr_SetFromErrno=python33.PyErr_SetFromErrno
+ PyErr_SetFromErrnoWithFilename=python33.PyErr_SetFromErrnoWithFilename
+ PyErr_SetFromErrnoWithFilenameObject=python33.PyErr_SetFromErrnoWithFilenameObject
+ PyErr_SetInterrupt=python33.PyErr_SetInterrupt
+ PyErr_SetNone=python33.PyErr_SetNone
+ PyErr_SetObject=python33.PyErr_SetObject
+ PyErr_SetString=python33.PyErr_SetString
+ PyErr_SyntaxLocation=python33.PyErr_SyntaxLocation
+ PyErr_WarnEx=python33.PyErr_WarnEx
+ PyErr_WarnExplicit=python33.PyErr_WarnExplicit
+ PyErr_WarnFormat=python33.PyErr_WarnFormat
+ PyErr_WriteUnraisable=python33.PyErr_WriteUnraisable
+ PyEval_AcquireLock=python33.PyEval_AcquireLock
+ PyEval_AcquireThread=python33.PyEval_AcquireThread
+ PyEval_CallFunction=python33.PyEval_CallFunction
+ PyEval_CallMethod=python33.PyEval_CallMethod
+ PyEval_CallObjectWithKeywords=python33.PyEval_CallObjectWithKeywords
+ PyEval_EvalCode=python33.PyEval_EvalCode
+ PyEval_EvalCodeEx=python33.PyEval_EvalCodeEx
+ PyEval_EvalFrame=python33.PyEval_EvalFrame
+ PyEval_EvalFrameEx=python33.PyEval_EvalFrameEx
+ PyEval_GetBuiltins=python33.PyEval_GetBuiltins
+ PyEval_GetCallStats=python33.PyEval_GetCallStats
+ PyEval_GetFrame=python33.PyEval_GetFrame
+ PyEval_GetFuncDesc=python33.PyEval_GetFuncDesc
+ PyEval_GetFuncName=python33.PyEval_GetFuncName
+ PyEval_GetGlobals=python33.PyEval_GetGlobals
+ PyEval_GetLocals=python33.PyEval_GetLocals
+ PyEval_InitThreads=python33.PyEval_InitThreads
+ PyEval_ReInitThreads=python33.PyEval_ReInitThreads
+ PyEval_ReleaseLock=python33.PyEval_ReleaseLock
+ PyEval_ReleaseThread=python33.PyEval_ReleaseThread
+ PyEval_RestoreThread=python33.PyEval_RestoreThread
+ PyEval_SaveThread=python33.PyEval_SaveThread
+ PyEval_ThreadsInitialized=python33.PyEval_ThreadsInitialized
+ PyExc_ArithmeticError=python33.PyExc_ArithmeticError DATA
+ PyExc_AssertionError=python33.PyExc_AssertionError DATA
+ PyExc_AttributeError=python33.PyExc_AttributeError DATA
+ PyExc_BaseException=python33.PyExc_BaseException DATA
+ PyExc_BufferError=python33.PyExc_BufferError DATA
+ PyExc_BytesWarning=python33.PyExc_BytesWarning DATA
+ PyExc_DeprecationWarning=python33.PyExc_DeprecationWarning DATA
+ PyExc_EOFError=python33.PyExc_EOFError DATA
+ PyExc_EnvironmentError=python33.PyExc_EnvironmentError DATA
+ PyExc_Exception=python33.PyExc_Exception DATA
+ PyExc_FloatingPointError=python33.PyExc_FloatingPointError DATA
+ PyExc_FutureWarning=python33.PyExc_FutureWarning DATA
+ PyExc_GeneratorExit=python33.PyExc_GeneratorExit DATA
+ PyExc_IOError=python33.PyExc_IOError DATA
+ PyExc_ImportError=python33.PyExc_ImportError DATA
+ PyExc_ImportWarning=python33.PyExc_ImportWarning DATA
+ PyExc_IndentationError=python33.PyExc_IndentationError DATA
+ PyExc_IndexError=python33.PyExc_IndexError DATA
+ PyExc_KeyError=python33.PyExc_KeyError DATA
+ PyExc_KeyboardInterrupt=python33.PyExc_KeyboardInterrupt DATA
+ PyExc_LookupError=python33.PyExc_LookupError DATA
+ PyExc_MemoryError=python33.PyExc_MemoryError DATA
+ PyExc_MemoryErrorInst=python33.PyExc_MemoryErrorInst DATA
+ PyExc_NameError=python33.PyExc_NameError DATA
+ PyExc_NotImplementedError=python33.PyExc_NotImplementedError DATA
+ PyExc_OSError=python33.PyExc_OSError DATA
+ PyExc_OverflowError=python33.PyExc_OverflowError DATA
+ PyExc_PendingDeprecationWarning=python33.PyExc_PendingDeprecationWarning DATA
+ PyExc_RecursionErrorInst=python33.PyExc_RecursionErrorInst DATA
+ PyExc_ReferenceError=python33.PyExc_ReferenceError DATA
+ PyExc_RuntimeError=python33.PyExc_RuntimeError DATA
+ PyExc_RuntimeWarning=python33.PyExc_RuntimeWarning DATA
+ PyExc_StopIteration=python33.PyExc_StopIteration DATA
+ PyExc_SyntaxError=python33.PyExc_SyntaxError DATA
+ PyExc_SyntaxWarning=python33.PyExc_SyntaxWarning DATA
+ PyExc_SystemError=python33.PyExc_SystemError DATA
+ PyExc_SystemExit=python33.PyExc_SystemExit DATA
+ PyExc_TabError=python33.PyExc_TabError DATA
+ PyExc_TypeError=python33.PyExc_TypeError DATA
+ PyExc_UnboundLocalError=python33.PyExc_UnboundLocalError DATA
+ PyExc_UnicodeDecodeError=python33.PyExc_UnicodeDecodeError DATA
+ PyExc_UnicodeEncodeError=python33.PyExc_UnicodeEncodeError DATA
+ PyExc_UnicodeError=python33.PyExc_UnicodeError DATA
+ PyExc_UnicodeTranslateError=python33.PyExc_UnicodeTranslateError DATA
+ PyExc_UnicodeWarning=python33.PyExc_UnicodeWarning DATA
+ PyExc_UserWarning=python33.PyExc_UserWarning DATA
+ PyExc_ValueError=python33.PyExc_ValueError DATA
+ PyExc_Warning=python33.PyExc_Warning DATA
+ PyExc_ZeroDivisionError=python33.PyExc_ZeroDivisionError DATA
+ PyException_GetCause=python33.PyException_GetCause
+ PyException_GetContext=python33.PyException_GetContext
+ PyException_GetTraceback=python33.PyException_GetTraceback
+ PyException_SetCause=python33.PyException_SetCause
+ PyException_SetContext=python33.PyException_SetContext
+ PyException_SetTraceback=python33.PyException_SetTraceback
+ PyFile_FromFd=python33.PyFile_FromFd
+ PyFile_GetLine=python33.PyFile_GetLine
+ PyFile_WriteObject=python33.PyFile_WriteObject
+ PyFile_WriteString=python33.PyFile_WriteString
+ PyFilter_Type=python33.PyFilter_Type DATA
+ PyFloat_AsDouble=python33.PyFloat_AsDouble
+ PyFloat_FromDouble=python33.PyFloat_FromDouble
+ PyFloat_FromString=python33.PyFloat_FromString
+ PyFloat_GetInfo=python33.PyFloat_GetInfo
+ PyFloat_GetMax=python33.PyFloat_GetMax
+ PyFloat_GetMin=python33.PyFloat_GetMin
+ PyFloat_Type=python33.PyFloat_Type DATA
+ PyFrozenSet_New=python33.PyFrozenSet_New
+ PyFrozenSet_Type=python33.PyFrozenSet_Type DATA
+ PyGC_Collect=python33.PyGC_Collect
+ PyGILState_Ensure=python33.PyGILState_Ensure
+ PyGILState_GetThisThreadState=python33.PyGILState_GetThisThreadState
+ PyGILState_Release=python33.PyGILState_Release
+ PyGetSetDescr_Type=python33.PyGetSetDescr_Type DATA
+ PyImport_AddModule=python33.PyImport_AddModule
+ PyImport_AppendInittab=python33.PyImport_AppendInittab
+ PyImport_Cleanup=python33.PyImport_Cleanup
+ PyImport_ExecCodeModule=python33.PyImport_ExecCodeModule
+ PyImport_ExecCodeModuleEx=python33.PyImport_ExecCodeModuleEx
+ PyImport_ExecCodeModuleWithPathnames=python33.PyImport_ExecCodeModuleWithPathnames
+ PyImport_GetImporter=python33.PyImport_GetImporter
+ PyImport_GetMagicNumber=python33.PyImport_GetMagicNumber
+ PyImport_GetMagicTag=python33.PyImport_GetMagicTag
+ PyImport_GetModuleDict=python33.PyImport_GetModuleDict
+ PyImport_Import=python33.PyImport_Import
+ PyImport_ImportFrozenModule=python33.PyImport_ImportFrozenModule
+ PyImport_ImportModule=python33.PyImport_ImportModule
+ PyImport_ImportModuleLevel=python33.PyImport_ImportModuleLevel
+ PyImport_ImportModuleNoBlock=python33.PyImport_ImportModuleNoBlock
+ PyImport_ReloadModule=python33.PyImport_ReloadModule
+ PyInterpreterState_Clear=python33.PyInterpreterState_Clear
+ PyInterpreterState_Delete=python33.PyInterpreterState_Delete
+ PyInterpreterState_New=python33.PyInterpreterState_New
+ PyIter_Next=python33.PyIter_Next
+ PyListIter_Type=python33.PyListIter_Type DATA
+ PyListRevIter_Type=python33.PyListRevIter_Type DATA
+ PyList_Append=python33.PyList_Append
+ PyList_AsTuple=python33.PyList_AsTuple
+ PyList_GetItem=python33.PyList_GetItem
+ PyList_GetSlice=python33.PyList_GetSlice
+ PyList_Insert=python33.PyList_Insert
+ PyList_New=python33.PyList_New
+ PyList_Reverse=python33.PyList_Reverse
+ PyList_SetItem=python33.PyList_SetItem
+ PyList_SetSlice=python33.PyList_SetSlice
+ PyList_Size=python33.PyList_Size
+ PyList_Sort=python33.PyList_Sort
+ PyList_Type=python33.PyList_Type DATA
+ PyLongRangeIter_Type=python33.PyLongRangeIter_Type DATA
+ PyLong_AsDouble=python33.PyLong_AsDouble
+ PyLong_AsLong=python33.PyLong_AsLong
+ PyLong_AsLongAndOverflow=python33.PyLong_AsLongAndOverflow
+ PyLong_AsLongLong=python33.PyLong_AsLongLong
+ PyLong_AsLongLongAndOverflow=python33.PyLong_AsLongLongAndOverflow
+ PyLong_AsSize_t=python33.PyLong_AsSize_t
+ PyLong_AsSsize_t=python33.PyLong_AsSsize_t
+ PyLong_AsUnsignedLong=python33.PyLong_AsUnsignedLong
+ PyLong_AsUnsignedLongLong=python33.PyLong_AsUnsignedLongLong
+ PyLong_AsUnsignedLongLongMask=python33.PyLong_AsUnsignedLongLongMask
+ PyLong_AsUnsignedLongMask=python33.PyLong_AsUnsignedLongMask
+ PyLong_AsVoidPtr=python33.PyLong_AsVoidPtr
+ PyLong_FromDouble=python33.PyLong_FromDouble
+ PyLong_FromLong=python33.PyLong_FromLong
+ PyLong_FromLongLong=python33.PyLong_FromLongLong
+ PyLong_FromSize_t=python33.PyLong_FromSize_t
+ PyLong_FromSsize_t=python33.PyLong_FromSsize_t
+ PyLong_FromString=python33.PyLong_FromString
+ PyLong_FromUnsignedLong=python33.PyLong_FromUnsignedLong
+ PyLong_FromUnsignedLongLong=python33.PyLong_FromUnsignedLongLong
+ PyLong_FromVoidPtr=python33.PyLong_FromVoidPtr
+ PyLong_GetInfo=python33.PyLong_GetInfo
+ PyLong_Type=python33.PyLong_Type DATA
+ PyMap_Type=python33.PyMap_Type DATA
+ PyMapping_Check=python33.PyMapping_Check
+ PyMapping_GetItemString=python33.PyMapping_GetItemString
+ PyMapping_HasKey=python33.PyMapping_HasKey
+ PyMapping_HasKeyString=python33.PyMapping_HasKeyString
+ PyMapping_Items=python33.PyMapping_Items
+ PyMapping_Keys=python33.PyMapping_Keys
+ PyMapping_Length=python33.PyMapping_Length
+ PyMapping_SetItemString=python33.PyMapping_SetItemString
+ PyMapping_Size=python33.PyMapping_Size
+ PyMapping_Values=python33.PyMapping_Values
+ PyMem_Free=python33.PyMem_Free
+ PyMem_Malloc=python33.PyMem_Malloc
+ PyMem_Realloc=python33.PyMem_Realloc
+ PyMemberDescr_Type=python33.PyMemberDescr_Type DATA
+ PyMemoryView_FromObject=python33.PyMemoryView_FromObject
+ PyMemoryView_GetContiguous=python33.PyMemoryView_GetContiguous
+ PyMemoryView_Type=python33.PyMemoryView_Type DATA
+ PyMethodDescr_Type=python33.PyMethodDescr_Type DATA
+ PyModule_AddIntConstant=python33.PyModule_AddIntConstant
+ PyModule_AddObject=python33.PyModule_AddObject
+ PyModule_AddStringConstant=python33.PyModule_AddStringConstant
+ PyModule_Create2=python33.PyModule_Create2
+ PyModule_GetDef=python33.PyModule_GetDef
+ PyModule_GetDict=python33.PyModule_GetDict
+ PyModule_GetFilename=python33.PyModule_GetFilename
+ PyModule_GetFilenameObject=python33.PyModule_GetFilenameObject
+ PyModule_GetName=python33.PyModule_GetName
+ PyModule_GetState=python33.PyModule_GetState
+ PyModule_New=python33.PyModule_New
+ PyModule_Type=python33.PyModule_Type DATA
+ PyNullImporter_Type=python33.PyNullImporter_Type DATA
+ PyNumber_Absolute=python33.PyNumber_Absolute
+ PyNumber_Add=python33.PyNumber_Add
+ PyNumber_And=python33.PyNumber_And
+ PyNumber_AsSsize_t=python33.PyNumber_AsSsize_t
+ PyNumber_Check=python33.PyNumber_Check
+ PyNumber_Divmod=python33.PyNumber_Divmod
+ PyNumber_Float=python33.PyNumber_Float
+ PyNumber_FloorDivide=python33.PyNumber_FloorDivide
+ PyNumber_InPlaceAdd=python33.PyNumber_InPlaceAdd
+ PyNumber_InPlaceAnd=python33.PyNumber_InPlaceAnd
+ PyNumber_InPlaceFloorDivide=python33.PyNumber_InPlaceFloorDivide
+ PyNumber_InPlaceLshift=python33.PyNumber_InPlaceLshift
+ PyNumber_InPlaceMultiply=python33.PyNumber_InPlaceMultiply
+ PyNumber_InPlaceOr=python33.PyNumber_InPlaceOr
+ PyNumber_InPlacePower=python33.PyNumber_InPlacePower
+ PyNumber_InPlaceRemainder=python33.PyNumber_InPlaceRemainder
+ PyNumber_InPlaceRshift=python33.PyNumber_InPlaceRshift
+ PyNumber_InPlaceSubtract=python33.PyNumber_InPlaceSubtract
+ PyNumber_InPlaceTrueDivide=python33.PyNumber_InPlaceTrueDivide
+ PyNumber_InPlaceXor=python33.PyNumber_InPlaceXor
+ PyNumber_Index=python33.PyNumber_Index
+ PyNumber_Invert=python33.PyNumber_Invert
+ PyNumber_Long=python33.PyNumber_Long
+ PyNumber_Lshift=python33.PyNumber_Lshift
+ PyNumber_Multiply=python33.PyNumber_Multiply
+ PyNumber_Negative=python33.PyNumber_Negative
+ PyNumber_Or=python33.PyNumber_Or
+ PyNumber_Positive=python33.PyNumber_Positive
+ PyNumber_Power=python33.PyNumber_Power
+ PyNumber_Remainder=python33.PyNumber_Remainder
+ PyNumber_Rshift=python33.PyNumber_Rshift
+ PyNumber_Subtract=python33.PyNumber_Subtract
+ PyNumber_ToBase=python33.PyNumber_ToBase
+ PyNumber_TrueDivide=python33.PyNumber_TrueDivide
+ PyNumber_Xor=python33.PyNumber_Xor
+ PyOS_AfterFork=python33.PyOS_AfterFork
+ PyOS_InitInterrupts=python33.PyOS_InitInterrupts
+ PyOS_InputHook=python33.PyOS_InputHook DATA
+ PyOS_InterruptOccurred=python33.PyOS_InterruptOccurred
+ PyOS_ReadlineFunctionPointer=python33.PyOS_ReadlineFunctionPointer DATA
+ PyOS_double_to_string=python33.PyOS_double_to_string
+ PyOS_getsig=python33.PyOS_getsig
+ PyOS_mystricmp=python33.PyOS_mystricmp
+ PyOS_mystrnicmp=python33.PyOS_mystrnicmp
+ PyOS_setsig=python33.PyOS_setsig
+ PyOS_snprintf=python33.PyOS_snprintf
+ PyOS_string_to_double=python33.PyOS_string_to_double
+ PyOS_strtol=python33.PyOS_strtol
+ PyOS_strtoul=python33.PyOS_strtoul
+ PyOS_vsnprintf=python33.PyOS_vsnprintf
+ PyObject_ASCII=python33.PyObject_ASCII
+ PyObject_AsCharBuffer=python33.PyObject_AsCharBuffer
+ PyObject_AsFileDescriptor=python33.PyObject_AsFileDescriptor
+ PyObject_AsReadBuffer=python33.PyObject_AsReadBuffer
+ PyObject_AsWriteBuffer=python33.PyObject_AsWriteBuffer
+ PyObject_Bytes=python33.PyObject_Bytes
+ PyObject_Call=python33.PyObject_Call
+ PyObject_CallFunction=python33.PyObject_CallFunction
+ PyObject_CallFunctionObjArgs=python33.PyObject_CallFunctionObjArgs
+ PyObject_CallMethod=python33.PyObject_CallMethod
+ PyObject_CallMethodObjArgs=python33.PyObject_CallMethodObjArgs
+ PyObject_CallObject=python33.PyObject_CallObject
+ PyObject_CheckReadBuffer=python33.PyObject_CheckReadBuffer
+ PyObject_ClearWeakRefs=python33.PyObject_ClearWeakRefs
+ PyObject_DelItem=python33.PyObject_DelItem
+ PyObject_DelItemString=python33.PyObject_DelItemString
+ PyObject_Dir=python33.PyObject_Dir
+ PyObject_Format=python33.PyObject_Format
+ PyObject_Free=python33.PyObject_Free
+ PyObject_GC_Del=python33.PyObject_GC_Del
+ PyObject_GC_Track=python33.PyObject_GC_Track
+ PyObject_GC_UnTrack=python33.PyObject_GC_UnTrack
+ PyObject_GenericGetAttr=python33.PyObject_GenericGetAttr
+ PyObject_GenericSetAttr=python33.PyObject_GenericSetAttr
+ PyObject_GetAttr=python33.PyObject_GetAttr
+ PyObject_GetAttrString=python33.PyObject_GetAttrString
+ PyObject_GetItem=python33.PyObject_GetItem
+ PyObject_GetIter=python33.PyObject_GetIter
+ PyObject_HasAttr=python33.PyObject_HasAttr
+ PyObject_HasAttrString=python33.PyObject_HasAttrString
+ PyObject_Hash=python33.PyObject_Hash
+ PyObject_HashNotImplemented=python33.PyObject_HashNotImplemented
+ PyObject_Init=python33.PyObject_Init
+ PyObject_InitVar=python33.PyObject_InitVar
+ PyObject_IsInstance=python33.PyObject_IsInstance
+ PyObject_IsSubclass=python33.PyObject_IsSubclass
+ PyObject_IsTrue=python33.PyObject_IsTrue
+ PyObject_Length=python33.PyObject_Length
+ PyObject_Malloc=python33.PyObject_Malloc
+ PyObject_Not=python33.PyObject_Not
+ PyObject_Realloc=python33.PyObject_Realloc
+ PyObject_Repr=python33.PyObject_Repr
+ PyObject_RichCompare=python33.PyObject_RichCompare
+ PyObject_RichCompareBool=python33.PyObject_RichCompareBool
+ PyObject_SelfIter=python33.PyObject_SelfIter
+ PyObject_SetAttr=python33.PyObject_SetAttr
+ PyObject_SetAttrString=python33.PyObject_SetAttrString
+ PyObject_SetItem=python33.PyObject_SetItem
+ PyObject_Size=python33.PyObject_Size
+ PyObject_Str=python33.PyObject_Str
+ PyObject_Type=python33.PyObject_Type DATA
+ PyParser_SimpleParseFileFlags=python33.PyParser_SimpleParseFileFlags
+ PyParser_SimpleParseStringFlags=python33.PyParser_SimpleParseStringFlags
+ PyProperty_Type=python33.PyProperty_Type DATA
+ PyRangeIter_Type=python33.PyRangeIter_Type DATA
+ PyRange_Type=python33.PyRange_Type DATA
+ PyReversed_Type=python33.PyReversed_Type DATA
+ PySeqIter_New=python33.PySeqIter_New
+ PySeqIter_Type=python33.PySeqIter_Type DATA
+ PySequence_Check=python33.PySequence_Check
+ PySequence_Concat=python33.PySequence_Concat
+ PySequence_Contains=python33.PySequence_Contains
+ PySequence_Count=python33.PySequence_Count
+ PySequence_DelItem=python33.PySequence_DelItem
+ PySequence_DelSlice=python33.PySequence_DelSlice
+ PySequence_Fast=python33.PySequence_Fast
+ PySequence_GetItem=python33.PySequence_GetItem
+ PySequence_GetSlice=python33.PySequence_GetSlice
+ PySequence_In=python33.PySequence_In
+ PySequence_InPlaceConcat=python33.PySequence_InPlaceConcat
+ PySequence_InPlaceRepeat=python33.PySequence_InPlaceRepeat
+ PySequence_Index=python33.PySequence_Index
+ PySequence_Length=python33.PySequence_Length
+ PySequence_List=python33.PySequence_List
+ PySequence_Repeat=python33.PySequence_Repeat
+ PySequence_SetItem=python33.PySequence_SetItem
+ PySequence_SetSlice=python33.PySequence_SetSlice
+ PySequence_Size=python33.PySequence_Size
+ PySequence_Tuple=python33.PySequence_Tuple
+ PySetIter_Type=python33.PySetIter_Type DATA
+ PySet_Add=python33.PySet_Add
+ PySet_Clear=python33.PySet_Clear
+ PySet_Contains=python33.PySet_Contains
+ PySet_Discard=python33.PySet_Discard
+ PySet_New=python33.PySet_New
+ PySet_Pop=python33.PySet_Pop
+ PySet_Size=python33.PySet_Size
+ PySet_Type=python33.PySet_Type DATA
+ PySlice_GetIndices=python33.PySlice_GetIndices
+ PySlice_GetIndicesEx=python33.PySlice_GetIndicesEx
+ PySlice_New=python33.PySlice_New
+ PySlice_Type=python33.PySlice_Type DATA
+ PySortWrapper_Type=python33.PySortWrapper_Type DATA
+ PyState_FindModule=python33.PyState_FindModule
+ PyStructSequence_GetItem=python33.PyStructSequence_GetItem
+ PyStructSequence_New=python33.PyStructSequence_New
+ PyStructSequence_NewType=python33.PyStructSequence_NewType
+ PyStructSequence_SetItem=python33.PyStructSequence_SetItem
+ PySuper_Type=python33.PySuper_Type DATA
+ PySys_AddWarnOption=python33.PySys_AddWarnOption
+ PySys_AddWarnOptionUnicode=python33.PySys_AddWarnOptionUnicode
+ PySys_FormatStderr=python33.PySys_FormatStderr
+ PySys_FormatStdout=python33.PySys_FormatStdout
+ PySys_GetObject=python33.PySys_GetObject
+ PySys_HasWarnOptions=python33.PySys_HasWarnOptions
+ PySys_ResetWarnOptions=python33.PySys_ResetWarnOptions
+ PySys_SetArgv=python33.PySys_SetArgv
+ PySys_SetArgvEx=python33.PySys_SetArgvEx
+ PySys_SetObject=python33.PySys_SetObject
+ PySys_SetPath=python33.PySys_SetPath
+ PySys_WriteStderr=python33.PySys_WriteStderr
+ PySys_WriteStdout=python33.PySys_WriteStdout
+ PyThreadState_Clear=python33.PyThreadState_Clear
+ PyThreadState_Delete=python33.PyThreadState_Delete
+ PyThreadState_DeleteCurrent=python33.PyThreadState_DeleteCurrent
+ PyThreadState_Get=python33.PyThreadState_Get
+ PyThreadState_GetDict=python33.PyThreadState_GetDict
+ PyThreadState_New=python33.PyThreadState_New
+ PyThreadState_SetAsyncExc=python33.PyThreadState_SetAsyncExc
+ PyThreadState_Swap=python33.PyThreadState_Swap
+ PyTraceBack_Here=python33.PyTraceBack_Here
+ PyTraceBack_Print=python33.PyTraceBack_Print
+ PyTraceBack_Type=python33.PyTraceBack_Type DATA
+ PyTupleIter_Type=python33.PyTupleIter_Type DATA
+ PyTuple_ClearFreeList=python33.PyTuple_ClearFreeList
+ PyTuple_GetItem=python33.PyTuple_GetItem
+ PyTuple_GetSlice=python33.PyTuple_GetSlice
+ PyTuple_New=python33.PyTuple_New
+ PyTuple_Pack=python33.PyTuple_Pack
+ PyTuple_SetItem=python33.PyTuple_SetItem
+ PyTuple_Size=python33.PyTuple_Size
+ PyTuple_Type=python33.PyTuple_Type DATA
+ PyType_ClearCache=python33.PyType_ClearCache
+ PyType_FromSpec=python33.PyType_FromSpec
+ PyType_GenericAlloc=python33.PyType_GenericAlloc
+ PyType_GenericNew=python33.PyType_GenericNew
+ PyType_GetFlags=python33.PyType_GetFlags
+ PyType_IsSubtype=python33.PyType_IsSubtype
+ PyType_Modified=python33.PyType_Modified
+ PyType_Ready=python33.PyType_Ready
+ PyType_Type=python33.PyType_Type DATA
+ PyUnicodeDecodeError_Create=python33.PyUnicodeDecodeError_Create
+ PyUnicodeDecodeError_GetEncoding=python33.PyUnicodeDecodeError_GetEncoding
+ PyUnicodeDecodeError_GetEnd=python33.PyUnicodeDecodeError_GetEnd
+ PyUnicodeDecodeError_GetObject=python33.PyUnicodeDecodeError_GetObject
+ PyUnicodeDecodeError_GetReason=python33.PyUnicodeDecodeError_GetReason
+ PyUnicodeDecodeError_GetStart=python33.PyUnicodeDecodeError_GetStart
+ PyUnicodeDecodeError_SetEnd=python33.PyUnicodeDecodeError_SetEnd
+ PyUnicodeDecodeError_SetReason=python33.PyUnicodeDecodeError_SetReason
+ PyUnicodeDecodeError_SetStart=python33.PyUnicodeDecodeError_SetStart
+ PyUnicodeEncodeError_GetEncoding=python33.PyUnicodeEncodeError_GetEncoding
+ PyUnicodeEncodeError_GetEnd=python33.PyUnicodeEncodeError_GetEnd
+ PyUnicodeEncodeError_GetObject=python33.PyUnicodeEncodeError_GetObject
+ PyUnicodeEncodeError_GetReason=python33.PyUnicodeEncodeError_GetReason
+ PyUnicodeEncodeError_GetStart=python33.PyUnicodeEncodeError_GetStart
+ PyUnicodeEncodeError_SetEnd=python33.PyUnicodeEncodeError_SetEnd
+ PyUnicodeEncodeError_SetReason=python33.PyUnicodeEncodeError_SetReason
+ PyUnicodeEncodeError_SetStart=python33.PyUnicodeEncodeError_SetStart
+ PyUnicodeIter_Type=python33.PyUnicodeIter_Type DATA
+ PyUnicodeTranslateError_GetEnd=python33.PyUnicodeTranslateError_GetEnd
+ PyUnicodeTranslateError_GetObject=python33.PyUnicodeTranslateError_GetObject
+ PyUnicodeTranslateError_GetReason=python33.PyUnicodeTranslateError_GetReason
+ PyUnicodeTranslateError_GetStart=python33.PyUnicodeTranslateError_GetStart
+ PyUnicodeTranslateError_SetEnd=python33.PyUnicodeTranslateError_SetEnd
+ PyUnicodeTranslateError_SetReason=python33.PyUnicodeTranslateError_SetReason
+ PyUnicodeTranslateError_SetStart=python33.PyUnicodeTranslateError_SetStart
+ PyUnicode_Append=python33.PyUnicodeUCS2_Append
+ PyUnicode_AppendAndDel=python33.PyUnicodeUCS2_AppendAndDel
+ PyUnicode_AsASCIIString=python33.PyUnicodeUCS2_AsASCIIString
+ PyUnicode_AsCharmapString=python33.PyUnicodeUCS2_AsCharmapString
+ PyUnicode_AsDecodedObject=python33.PyUnicodeUCS2_AsDecodedObject
+ PyUnicode_AsDecodedUnicode=python33.PyUnicodeUCS2_AsDecodedUnicode
+ PyUnicode_AsEncodedObject=python33.PyUnicodeUCS2_AsEncodedObject
+ PyUnicode_AsEncodedString=python33.PyUnicodeUCS2_AsEncodedString
+ PyUnicode_AsEncodedUnicode=python33.PyUnicodeUCS2_AsEncodedUnicode
+ PyUnicode_AsLatin1String=python33.PyUnicodeUCS2_AsLatin1String
+ PyUnicode_AsRawUnicodeEscapeString=python33.PyUnicodeUCS2_AsRawUnicodeEscapeString
+ PyUnicode_AsUTF16String=python33.PyUnicodeUCS2_AsUTF16String
+ PyUnicode_AsUTF32String=python33.PyUnicodeUCS2_AsUTF32String
+ PyUnicode_AsUTF8String=python33.PyUnicodeUCS2_AsUTF8String
+ PyUnicode_AsUnicodeEscapeString=python33.PyUnicodeUCS2_AsUnicodeEscapeString
+ PyUnicode_AsWideChar=python33.PyUnicodeUCS2_AsWideChar
+ PyUnicode_ClearFreelist=python33.PyUnicodeUCS2_ClearFreelist
+ PyUnicode_Compare=python33.PyUnicodeUCS2_Compare
+ PyUnicode_Concat=python33.PyUnicodeUCS2_Concat
+ PyUnicode_Contains=python33.PyUnicodeUCS2_Contains
+ PyUnicode_Count=python33.PyUnicodeUCS2_Count
+ PyUnicode_Decode=python33.PyUnicodeUCS2_Decode
+ PyUnicode_DecodeASCII=python33.PyUnicodeUCS2_DecodeASCII
+ PyUnicode_DecodeCharmap=python33.PyUnicodeUCS2_DecodeCharmap
+ PyUnicode_DecodeFSDefault=python33.PyUnicodeUCS2_DecodeFSDefault
+ PyUnicode_DecodeFSDefaultAndSize=python33.PyUnicodeUCS2_DecodeFSDefaultAndSize
+ PyUnicode_DecodeLatin1=python33.PyUnicodeUCS2_DecodeLatin1
+ PyUnicode_DecodeRawUnicodeEscape=python33.PyUnicodeUCS2_DecodeRawUnicodeEscape
+ PyUnicode_DecodeUTF16=python33.PyUnicodeUCS2_DecodeUTF16
+ PyUnicode_DecodeUTF16Stateful=python33.PyUnicodeUCS2_DecodeUTF16Stateful
+ PyUnicode_DecodeUTF32=python33.PyUnicodeUCS2_DecodeUTF32
+ PyUnicode_DecodeUTF32Stateful=python33.PyUnicodeUCS2_DecodeUTF32Stateful
+ PyUnicode_DecodeUTF8=python33.PyUnicodeUCS2_DecodeUTF8
+ PyUnicode_DecodeUTF8Stateful=python33.PyUnicodeUCS2_DecodeUTF8Stateful
+ PyUnicode_DecodeUnicodeEscape=python33.PyUnicodeUCS2_DecodeUnicodeEscape
+ PyUnicode_FSConverter=python33.PyUnicodeUCS2_FSConverter
+ PyUnicode_FSDecoder=python33.PyUnicodeUCS2_FSDecoder
+ PyUnicode_Find=python33.PyUnicodeUCS2_Find
+ PyUnicode_Format=python33.PyUnicodeUCS2_Format
+ PyUnicode_FromEncodedObject=python33.PyUnicodeUCS2_FromEncodedObject
+ PyUnicode_FromFormat=python33.PyUnicodeUCS2_FromFormat
+ PyUnicode_FromFormatV=python33.PyUnicodeUCS2_FromFormatV
+ PyUnicode_FromObject=python33.PyUnicodeUCS2_FromObject
+ PyUnicode_FromOrdinal=python33.PyUnicodeUCS2_FromOrdinal
+ PyUnicode_FromString=python33.PyUnicodeUCS2_FromString
+ PyUnicode_FromStringAndSize=python33.PyUnicodeUCS2_FromStringAndSize
+ PyUnicode_FromWideChar=python33.PyUnicodeUCS2_FromWideChar
+ PyUnicode_GetDefaultEncoding=python33.PyUnicodeUCS2_GetDefaultEncoding
+ PyUnicode_GetSize=python33.PyUnicodeUCS2_GetSize
+ PyUnicode_IsIdentifier=python33.PyUnicodeUCS2_IsIdentifier
+ PyUnicode_Join=python33.PyUnicodeUCS2_Join
+ PyUnicode_Partition=python33.PyUnicodeUCS2_Partition
+ PyUnicode_RPartition=python33.PyUnicodeUCS2_RPartition
+ PyUnicode_RSplit=python33.PyUnicodeUCS2_RSplit
+ PyUnicode_Replace=python33.PyUnicodeUCS2_Replace
+ PyUnicode_Resize=python33.PyUnicodeUCS2_Resize
+ PyUnicode_RichCompare=python33.PyUnicodeUCS2_RichCompare
+ PyUnicode_SetDefaultEncoding=python33.PyUnicodeUCS2_SetDefaultEncoding
+ PyUnicode_Split=python33.PyUnicodeUCS2_Split
+ PyUnicode_Splitlines=python33.PyUnicodeUCS2_Splitlines
+ PyUnicode_Tailmatch=python33.PyUnicodeUCS2_Tailmatch
+ PyUnicode_Translate=python33.PyUnicodeUCS2_Translate
+ PyUnicode_BuildEncodingMap=python33.PyUnicode_BuildEncodingMap
+ PyUnicode_CompareWithASCIIString=python33.PyUnicode_CompareWithASCIIString
+ PyUnicode_DecodeUTF7=python33.PyUnicode_DecodeUTF7
+ PyUnicode_DecodeUTF7Stateful=python33.PyUnicode_DecodeUTF7Stateful
+ PyUnicode_EncodeFSDefault=python33.PyUnicode_EncodeFSDefault
+ PyUnicode_InternFromString=python33.PyUnicode_InternFromString
+ PyUnicode_InternImmortal=python33.PyUnicode_InternImmortal
+ PyUnicode_InternInPlace=python33.PyUnicode_InternInPlace
+ PyUnicode_Type=python33.PyUnicode_Type DATA
+ PyWeakref_GetObject=python33.PyWeakref_GetObject DATA
+ PyWeakref_NewProxy=python33.PyWeakref_NewProxy
+ PyWeakref_NewRef=python33.PyWeakref_NewRef
+ PyWrapperDescr_Type=python33.PyWrapperDescr_Type DATA
+ PyWrapper_New=python33.PyWrapper_New
+ PyZip_Type=python33.PyZip_Type DATA
+ Py_AddPendingCall=python33.Py_AddPendingCall
+ Py_AtExit=python33.Py_AtExit
+ Py_BuildValue=python33.Py_BuildValue
+ Py_CompileString=python33.Py_CompileString
+ Py_DecRef=python33.Py_DecRef
+ Py_EndInterpreter=python33.Py_EndInterpreter
+ Py_Exit=python33.Py_Exit
+ Py_FatalError=python33.Py_FatalError
+ Py_FileSystemDefaultEncoding=python33.Py_FileSystemDefaultEncoding DATA
+ Py_Finalize=python33.Py_Finalize
+ Py_GetBuildInfo=python33.Py_GetBuildInfo
+ Py_GetCompiler=python33.Py_GetCompiler
+ Py_GetCopyright=python33.Py_GetCopyright
+ Py_GetExecPrefix=python33.Py_GetExecPrefix
+ Py_GetPath=python33.Py_GetPath
+ Py_GetPlatform=python33.Py_GetPlatform
+ Py_GetPrefix=python33.Py_GetPrefix
+ Py_GetProgramFullPath=python33.Py_GetProgramFullPath
+ Py_GetProgramName=python33.Py_GetProgramName
+ Py_GetPythonHome=python33.Py_GetPythonHome
+ Py_GetRecursionLimit=python33.Py_GetRecursionLimit
+ Py_GetVersion=python33.Py_GetVersion
+ Py_HasFileSystemDefaultEncoding=python33.Py_HasFileSystemDefaultEncoding DATA
+ Py_IncRef=python33.Py_IncRef
+ Py_Initialize=python33.Py_Initialize
+ Py_InitializeEx=python33.Py_InitializeEx
+ Py_IsInitialized=python33.Py_IsInitialized
+ Py_Main=python33.Py_Main
+ Py_MakePendingCalls=python33.Py_MakePendingCalls
+ Py_NewInterpreter=python33.Py_NewInterpreter
+ Py_ReprEnter=python33.Py_ReprEnter
+ Py_ReprLeave=python33.Py_ReprLeave
+ Py_SetProgramName=python33.Py_SetProgramName
+ Py_SetPythonHome=python33.Py_SetPythonHome
+ Py_SetRecursionLimit=python33.Py_SetRecursionLimit
+ Py_SymtableString=python33.Py_SymtableString
+ Py_VaBuildValue=python33.Py_VaBuildValue
+ _PyErr_BadInternalCall=python33._PyErr_BadInternalCall
+ _PyObject_CallFunction_SizeT=python33._PyObject_CallFunction_SizeT
+ _PyObject_CallMethod_SizeT=python33._PyObject_CallMethod_SizeT
+ _PyObject_GC_Malloc=python33._PyObject_GC_Malloc
+ _PyObject_GC_New=python33._PyObject_GC_New
+ _PyObject_GC_NewVar=python33._PyObject_GC_NewVar
+ _PyObject_GC_Resize=python33._PyObject_GC_Resize
+ _PyObject_New=python33._PyObject_New
+ _PyObject_NewVar=python33._PyObject_NewVar
+ _PyState_AddModule=python33._PyState_AddModule
+ _PyThreadState_Init=python33._PyThreadState_Init
+ _PyThreadState_Prealloc=python33._PyThreadState_Prealloc
+ _PyTrash_delete_later=python33._PyTrash_delete_later DATA
+ _PyTrash_delete_nesting=python33._PyTrash_delete_nesting DATA
+ _PyTrash_deposit_object=python33._PyTrash_deposit_object
+ _PyTrash_destroy_chain=python33._PyTrash_destroy_chain
+ _PyWeakref_CallableProxyType=python33._PyWeakref_CallableProxyType DATA
+ _PyWeakref_ProxyType=python33._PyWeakref_ProxyType DATA
+ _PyWeakref_RefType=python33._PyWeakref_RefType DATA
+ _Py_BuildValue_SizeT=python33._Py_BuildValue_SizeT
+ _Py_CheckRecursionLimit=python33._Py_CheckRecursionLimit DATA
+ _Py_CheckRecursiveCall=python33._Py_CheckRecursiveCall
+ _Py_Dealloc=python33._Py_Dealloc
+ _Py_EllipsisObject=python33._Py_EllipsisObject DATA
+ _Py_FalseStruct=python33._Py_FalseStruct DATA
+ _Py_NoneStruct=python33._Py_NoneStruct DATA
+ _Py_NotImplementedStruct=python33._Py_NotImplementedStruct DATA
+ _Py_SwappedOp=python33._Py_SwappedOp DATA
+ _Py_TrueStruct=python33._Py_TrueStruct DATA
+ _Py_VaBuildValue_SizeT=python33._Py_VaBuildValue_SizeT
diff --git a/PC/python3.mak b/PC/python3.mak
index 256167f..ce65fba 100644
--- a/PC/python3.mak
+++ b/PC/python3.mak
@@ -1,10 +1,10 @@
-$(OutDir)python32.dll: python3.def $(OutDir)python32stub.lib
- cl /LD /Fe$(OutDir)python3.dll python3dll.c python3.def $(OutDir)python32stub.lib
+$(OutDir)python33.dll: python3.def $(OutDir)python33stub.lib
+ cl /LD /Fe$(OutDir)python3.dll python3dll.c python3.def $(OutDir)python33stub.lib
-$(OutDir)python32stub.lib: python32stub.def
- lib /def:python32stub.def /out:$(OutDir)python32stub.lib /MACHINE:$(MACHINE)
+$(OutDir)python33stub.lib: python33stub.def
+ lib /def:python33stub.def /out:$(OutDir)python33stub.lib /MACHINE:$(MACHINE)
clean:
- del $(OutDir)python3.dll $(OutDir)python3.lib $(OutDir)python32stub.lib $(OutDir)python3.exp $(OutDir)python32stub.exp
+ del $(OutDir)python3.dll $(OutDir)python3.lib $(OutDir)python33stub.lib $(OutDir)python3.exp $(OutDir)python33stub.exp
-rebuild: clean $(OutDir)python32.dll
+rebuild: clean $(OutDir)python33.dll
diff --git a/PC/python32gen.py b/PC/python33gen.py
index 9182d54..a85f417 100644
--- a/PC/python32gen.py
+++ b/PC/python33gen.py
@@ -1,9 +1,9 @@
-# Generate python32stub.def out of python3.def
+# Generate python33stub.def out of python3.def
# The regular import library cannot be used,
# since it doesn't provide the right symbols for
# data forwarding
-out = open("python32stub.def", "w")
-out.write('LIBRARY "python32"\n')
+out = open("python33stub.def", "w")
+out.write('LIBRARY "python33"\n')
out.write('EXPORTS\n')
inp = open("python3.def")
@@ -12,7 +12,7 @@ line = inp.readline()
assert line.strip()=='EXPORTS'
for line in inp:
- # SYM1=python32.SYM2[ DATA]
+ # SYM1=python33.SYM2[ DATA]
head, tail = line.split('.')
if 'DATA' in tail:
symbol, tail = tail.split(' ')
@@ -22,4 +22,3 @@ for line in inp:
inp.close()
out.close()
-
diff --git a/PC/python32stub.def b/PC/python33stub.def
index 0943ef0..6e4ed9f 100644
--- a/PC/python32stub.def
+++ b/PC/python33stub.def
@@ -1,4 +1,4 @@
-LIBRARY "python32"
+LIBRARY "python33"
EXPORTS
PyArg_Parse
PyArg_ParseTuple
diff --git a/PC/winreg.c b/PC/winreg.c
index 1bc47b9..451ced2 100644
--- a/PC/winreg.c
+++ b/PC/winreg.c
@@ -760,26 +760,27 @@ Py2Reg(PyObject *value, DWORD typ, BYTE **retDataBuf, DWORD *retDataSize)
case REG_SZ:
case REG_EXPAND_SZ:
{
- if (value == Py_None)
- *retDataSize = 1;
- else {
- if (!PyUnicode_Check(value))
- return FALSE;
- *retDataSize = Py_SAFE_DOWNCAST(
- 2 + PyUnicode_GET_DATA_SIZE(value),
- size_t, DWORD);
- }
- *retDataBuf = (BYTE *)PyMem_NEW(DWORD, *retDataSize);
- if (*retDataBuf==NULL){
- PyErr_NoMemory();
- return FALSE;
- }
- if (value == Py_None)
- wcscpy((wchar_t *)*retDataBuf, L"");
- else
- wcscpy((wchar_t *)*retDataBuf,
- PyUnicode_AS_UNICODE(value));
- break;
+ if (value != Py_None) {
+ Py_ssize_t len;
+ if (!PyUnicode_Check(value))
+ return FALSE;
+ *retDataBuf = (BYTE*)PyUnicode_AsWideCharString(value, &len);
+ if (*retDataBuf == NULL)
+ return FALSE;
+ *retDataSize = Py_SAFE_DOWNCAST(
+ (len + 1) * sizeof(wchar_t),
+ Py_ssize_t, DWORD);
+ }
+ else {
+ *retDataBuf = (BYTE *)PyMem_NEW(wchar_t, 1);
+ if (*retDataBuf == NULL) {
+ PyErr_NoMemory();
+ return FALSE;
+ }
+ ((wchar_t *)*retDataBuf)[0] = L'\0';
+ *retDataSize = 1 * sizeof(wchar_t);
+ }
+ break;
}
case REG_MULTI_SZ:
{
@@ -796,10 +797,16 @@ Py2Reg(PyObject *value, DWORD typ, BYTE **retDataBuf, DWORD *retDataSize)
for (j = 0; j < i; j++)
{
PyObject *t;
+ wchar_t *wstr;
+ Py_ssize_t len;
+
t = PyList_GET_ITEM(value, j);
if (!PyUnicode_Check(t))
return FALSE;
- size += Py_SAFE_DOWNCAST(2 + PyUnicode_GET_DATA_SIZE(t),
+ wstr = PyUnicode_AsUnicodeAndSize(t, &len);
+ if (wstr == NULL)
+ return FALSE;
+ size += Py_SAFE_DOWNCAST((len + 1) * sizeof(wchar_t),
size_t, DWORD);
}
@@ -815,10 +822,15 @@ Py2Reg(PyObject *value, DWORD typ, BYTE **retDataBuf, DWORD *retDataSize)
for (j = 0; j < i; j++)
{
PyObject *t;
+ wchar_t *wstr;
+ Py_ssize_t len;
+
t = PyList_GET_ITEM(value, j);
- wcscpy(P, PyUnicode_AS_UNICODE(t));
- P += 1 + wcslen(
- PyUnicode_AS_UNICODE(t));
+ wstr = PyUnicode_AsUnicodeAndSize(t, &len);
+ if (wstr == NULL)
+ return FALSE;
+ wcscpy(P, wstr);
+ P += (len + 1);
}
/* And doubly-terminate the list... */
*P = '\0';
@@ -882,7 +894,7 @@ Reg2Py(BYTE *retDataBuf, DWORD retDataSize, DWORD typ)
retDataSize -= 2;
if (retDataSize <= 0)
data = L"";
- obData = PyUnicode_FromUnicode(data, retDataSize/2);
+ obData = PyUnicode_FromWideChar(data, retDataSize/2);
break;
}
case REG_MULTI_SZ:
@@ -913,7 +925,7 @@ Reg2Py(BYTE *retDataBuf, DWORD retDataSize, DWORD typ)
}
PyList_SetItem(obData,
index,
- PyUnicode_FromUnicode(str[index], len));
+ PyUnicode_FromWideChar(str[index], len));
}
free(str);
@@ -1054,7 +1066,7 @@ PyDeleteKeyEx(PyObject *self, PyObject *args, PyObject *kwargs)
/* Only available on 64bit platforms, so we must load it
dynamically. */
- hMod = GetModuleHandle("advapi32.dll");
+ hMod = GetModuleHandleW(L"advapi32.dll");
if (hMod)
pfn = (RDKEFunc)GetProcAddress(hMod,
"RegDeleteKeyExW");
@@ -1123,7 +1135,7 @@ PyEnumKey(PyObject *self, PyObject *args)
if (rc != ERROR_SUCCESS)
return PyErr_SetFromWindowsErrWithFunction(rc, "RegEnumKeyEx");
- retStr = PyUnicode_FromUnicode(tmpbuf, len);
+ retStr = PyUnicode_FromWideChar(tmpbuf, len);
return retStr; /* can be NULL */
}
@@ -1215,8 +1227,8 @@ PyEnumValue(PyObject *self, PyObject *args)
static PyObject *
PyExpandEnvironmentStrings(PyObject *self, PyObject *args)
{
- Py_UNICODE *retValue = NULL;
- Py_UNICODE *src;
+ wchar_t *retValue = NULL;
+ wchar_t *src;
DWORD retValueSize;
DWORD rc;
PyObject *o;
@@ -1229,7 +1241,7 @@ PyExpandEnvironmentStrings(PyObject *self, PyObject *args)
return PyErr_SetFromWindowsErrWithFunction(retValueSize,
"ExpandEnvironmentStrings");
}
- retValue = (Py_UNICODE *)PyMem_Malloc(retValueSize * sizeof(Py_UNICODE));
+ retValue = (wchar_t *)PyMem_Malloc(retValueSize * sizeof(wchar_t));
if (retValue == NULL) {
return PyErr_NoMemory();
}
@@ -1240,7 +1252,7 @@ PyExpandEnvironmentStrings(PyObject *self, PyObject *args)
return PyErr_SetFromWindowsErrWithFunction(retValueSize,
"ExpandEnvironmentStrings");
}
- o = PyUnicode_FromUnicode(retValue, wcslen(retValue));
+ o = PyUnicode_FromWideChar(retValue, wcslen(retValue));
PyMem_Free(retValue);
return o;
}
@@ -1394,7 +1406,7 @@ PyQueryValue(PyObject *self, PyObject *args)
"RegQueryValue");
}
- retStr = PyUnicode_FromUnicode(retBuf, wcslen(retBuf));
+ retStr = PyUnicode_FromWideChar(retBuf, wcslen(retBuf));
PyMem_Free(retBuf);
return retStr;
}
@@ -1525,7 +1537,7 @@ PySetValueEx(PyObject *self, PyObject *args)
{
HKEY hKey;
PyObject *obKey;
- Py_UNICODE *valueName;
+ wchar_t *valueName;
PyObject *obRes;
PyObject *value;
BYTE *data;
@@ -1578,7 +1590,7 @@ PyDisableReflectionKey(PyObject *self, PyObject *args)
/* Only available on 64bit platforms, so we must load it
dynamically.*/
- hMod = GetModuleHandle("advapi32.dll");
+ hMod = GetModuleHandleW(L"advapi32.dll");
if (hMod)
pfn = (RDRKFunc)GetProcAddress(hMod,
"RegDisableReflectionKey");
@@ -1614,7 +1626,7 @@ PyEnableReflectionKey(PyObject *self, PyObject *args)
/* Only available on 64bit platforms, so we must load it
dynamically.*/
- hMod = GetModuleHandle("advapi32.dll");
+ hMod = GetModuleHandleW(L"advapi32.dll");
if (hMod)
pfn = (RERKFunc)GetProcAddress(hMod,
"RegEnableReflectionKey");
@@ -1651,7 +1663,7 @@ PyQueryReflectionKey(PyObject *self, PyObject *args)
/* Only available on 64bit platforms, so we must load it
dynamically.*/
- hMod = GetModuleHandle("advapi32.dll");
+ hMod = GetModuleHandleW(L"advapi32.dll");
if (hMod)
pfn = (RQRKFunc)GetProcAddress(hMod,
"RegQueryReflectionKey");
diff --git a/PC/winsound.c b/PC/winsound.c
index 1ed95ba..b564eab 100644
--- a/PC/winsound.c
+++ b/PC/winsound.c
@@ -72,7 +72,7 @@ PyDoc_STRVAR(sound_module_doc,
static PyObject *
sound_playsound(PyObject *s, PyObject *args)
{
- Py_UNICODE *wsound;
+ wchar_t *wsound;
int flags;
int ok;