diff options
| author | Georg Brandl <georg@python.org> | 2008-01-21 21:23:15 (GMT) |
|---|---|---|
| committer | Georg Brandl <georg@python.org> | 2008-01-21 21:23:15 (GMT) |
| commit | 32a3fb5ec95c9417c43344a80d9e09c8042ac66d (patch) | |
| tree | 7ecc7556d326a3e4e873f52e7611ca41a122b680 /Modules/_testcapimodule.c | |
| parent | f00b38e08ccdcb48e409df951454f91cec428c0e (diff) | |
| download | cpython-32a3fb5ec95c9417c43344a80d9e09c8042ac66d.zip cpython-32a3fb5ec95c9417c43344a80d9e09c8042ac66d.tar.gz cpython-32a3fb5ec95c9417c43344a80d9e09c8042ac66d.tar.bz2 | |
Patch #1720595: add T_BOOL to the range of structmember types.
Patch by Angelo Mottola, reviewed by MvL, tests by me.
Diffstat (limited to 'Modules/_testcapimodule.c')
| -rw-r--r-- | Modules/_testcapimodule.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/Modules/_testcapimodule.c b/Modules/_testcapimodule.c index 4bc0bbf..b852473 100644 --- a/Modules/_testcapimodule.c +++ b/Modules/_testcapimodule.c @@ -762,6 +762,7 @@ static PyMethodDef TestMethods[] = { #define AddSym(d, n, f, v) {PyObject *o = f(v); PyDict_SetItemString(d, n, o); Py_DECREF(o);} typedef struct { + char bool_member; char byte_member; unsigned char ubyte_member; short short_member; @@ -784,6 +785,7 @@ typedef struct { } test_structmembers; static struct PyMemberDef test_members[] = { + {"T_BOOL", T_BOOL, offsetof(test_structmembers, structmembers.bool_member), 0, NULL}, {"T_BYTE", T_BYTE, offsetof(test_structmembers, structmembers.byte_member), 0, NULL}, {"T_UBYTE", T_UBYTE, offsetof(test_structmembers, structmembers.ubyte_member), 0, NULL}, {"T_SHORT", T_SHORT, offsetof(test_structmembers, structmembers.short_member), 0, NULL}, @@ -803,13 +805,13 @@ static struct PyMemberDef test_members[] = { static PyObject *test_structmembers_new(PyTypeObject *type, PyObject *args, PyObject *kwargs){ - static char *keywords[]={"T_BYTE", "T_UBYTE", "T_SHORT", "T_USHORT", "T_INT", "T_UINT", + static char *keywords[]={"T_BOOL", "T_BYTE", "T_UBYTE", "T_SHORT", "T_USHORT", "T_INT", "T_UINT", "T_LONG", "T_ULONG", "T_FLOAT", "T_DOUBLE", #ifdef HAVE_LONG_LONG "T_LONGLONG", "T_ULONGLONG", #endif NULL}; - static char *fmt="|bBhHiIlkfd" + static char *fmt="|bbBhHiIlkfd" #ifdef HAVE_LONG_LONG "LK" #endif @@ -819,6 +821,7 @@ static PyObject *test_structmembers_new(PyTypeObject *type, PyObject *args, PyOb return NULL; memset(&ob->structmembers, 0, sizeof(all_structmembers)); if (!PyArg_ParseTupleAndKeywords(args, kwargs, fmt, keywords, + &ob->structmembers.bool_member, &ob->structmembers.byte_member, &ob->structmembers.ubyte_member, &ob->structmembers.short_member, &ob->structmembers.ushort_member, &ob->structmembers.int_member, &ob->structmembers.uint_member, |
