Compiling Itcl 3.4 with Tcl 8.5 gives:
./generic/itcl_class.c: In function ‘Itcl_ClassVarResolver’:
./generic/itcl_class.c:1115:6: warning: passing argument 1 of ‘tclIntStubsPtr->tclVarHashCreateVar’ from incompatible pointer type [enabled by default]
./generic/itcl_class.c:1115:6: note: expected ‘struct TclVarHashTable *’ but argument is of type ‘struct Tcl_HashTable *’
The cause of the problem is the definition of ItclCallFrame in
itclInt.h: the varTablePtr field there should be of type TclVarHashTable, not
of type Tcl_HashTable. I assume this modification was an attempt to
fix [Bug 3358283], but not at the source of the problem.
I suggest to apply the patch from [Bug 3358283], this eliminates
the need for Itcl 3.4 to provide its nown definition of ItclCallFrame, so
this just can be removed. See attached patch.
proposed fix
This bug arose with [cc1cf10c58], and was fixed in [0ef1990185], so this one can be closed.
Thanks!