A few changes in ttkGenStubs.tcl are valid for Tcl as well.
# + Remove xxx_TCL_DECLARED #ifdeffery
# + Remove dead code related to USE_*_STUB_PROCS (emitStubs, makeStub)
# + Use void (*reserved$i)(void) = 0 instead of void *reserved$i = NULL
# for unused stub entries, in case pointer-to-function and
# pointer-to-object are different sizes.
Since the firx for [Bug #803489], The mentioned #ifdeffery does not
serve any purpose in Tcl any more. It has brought more problems
than benefit, so ttkGenStubs.tcl is right in removing it altogether.
In addition, there are two more improvments:
- In stead of the ifdefferey, put an #ifdef __cplusplus guard, aground the
definition of the stub pointer, so it can be used in C++ files as well.
- Make the "generic" argument in de *.decl files optional
Here is the patch. Of course, all *Decls.h and *InitStubs.c files need
to be re-generated.