[PyQt] sip-4.19: macro errors in sipgen/gencode.c

Fabio Rossi fabrossi79 at gmail.com
Sun Feb 12 22:18:30 GMT 2017


I have probably found some errors in the gencode.c. Changesets 1611
and 1618 changed the name of generated type structure element inside
the _sipWrapperType structure. Should we update accordingly the macros
in gencode.c ?

--- sip/sipgen/gencode.c    2016-11-21 12:13:56.000000000 +0100
+++ sip/sipgen/gencode.c.new    2017-02-10 17:18:01.423564886 +0100
@@ -716,7 +716,7 @@
 "#define sipSaveSlot                 sipAPI_%s->api_save_slot\n"
 "#define sipClearAnySlotReference    sipAPI_%s->api_clear_any_slot_reference\n"
 "#define sipVisitSlot                sipAPI_%s->api_visit_slot\n"
-"#define sipWrappedTypeName(wt)      ((wt)->type->td_cname)\n"
+"#define sipWrappedTypeName(wt)      ((wt)->wt_td->td_cname)\n"
 "#define sipDeprecated               sipAPI_%s->api_deprecated\n"
 "#define sipGetReference             sipAPI_%s->api_get_reference\n"
 "#define sipKeepReference            sipAPI_%s->api_keep_reference\n"
@@ -768,19 +768,19 @@
 "#define sipConvertToArray           sipAPI_%s->api_convert_to_array\n"
 "#define sipConvertToTypedArray      sipAPI_%s->api_convert_to_typed_array\n"
 "#define sipWrapper_Check(w)         PyObject_TypeCheck((w),
sipAPI_%s->api_wrapper_type)\n"
-"#define sipGetWrapper(p, wt)        sipGetPyObject((p), (wt)->type)\n"
-"#define sipReleaseInstance(p, wt, s)    sipReleaseType((p),
(wt)->type, (s))\n"
+"#define sipGetWrapper(p, wt)        sipGetPyObject((p), (wt)->wt_td)\n"
+"#define sipReleaseInstance(p, wt, s)    sipReleaseType((p),
(wt)->wt_td, (s))\n"
 "#define sipReleaseMappedType        sipReleaseType\n"
-"#define sipCanConvertToInstance(o, wt, f)   sipCanConvertToType((o),
(wt)->type, (f))\n"
+"#define sipCanConvertToInstance(o, wt, f)   sipCanConvertToType((o),
(wt)->wt_td, (f))\n"
 "#define sipCanConvertToMappedType   sipCanConvertToType\n"
-"#define sipConvertToInstance(o, wt, t, f, s, e)
sipConvertToType((o), (wt)->type, (t), (f), (s), (e))\n"
+"#define sipConvertToInstance(o, wt, t, f, s, e)
sipConvertToType((o), (wt)->wt_td, (t), (f), (s), (e))\n"
 "#define sipConvertToMappedType      sipConvertToType\n"
-"#define sipForceConvertToInstance(o, wt, t, f, s, e)
sipForceConvertToType((o), (wt)->type, (t), (f), (s), (e))\n"
+"#define sipForceConvertToInstance(o, wt, t, f, s, e)
sipForceConvertToType((o), (wt)->wt_td, (t), (f), (s), (e))\n"
 "#define sipForceConvertToMappedType sipForceConvertToType\n"
-"#define sipConvertFromInstance(p, wt, t)    sipConvertFromType((p),
(wt)->type, (t))\n"
+"#define sipConvertFromInstance(p, wt, t)    sipConvertFromType((p),
(wt)->wt_td, (t))\n"
 "#define sipConvertFromMappedType    sipConvertFromType\n"
 "#define sipConvertFromNamedEnum(v, pt)  sipConvertFromEnum((v),
((sipEnumTypeObject *)(pt))->type)\n"
-"#define sipConvertFromNewInstance(p, wt, t)
sipConvertFromNewType((p), (wt)->type, (t))\n"
+"#define sipConvertFromNewInstance(p, wt, t)
sipConvertFromNewType((p), (wt)->wt_td, (t))\n"
         ,mname
         ,mname
         ,mname


More information about the PyQt mailing list