Dear all,
When using a recent gcc-compiler of the 4.x family, xotcl fails to compile due to a compatibility issue with respect to declaring nested functions *static*. xotcl.c, however, currently contains one static nested function and therefore breaks when using gcc4. The following error is reported back by make:
############## snip ############## ./generic/xotcl.c: In function 'XOTcl_ThreadExitProc': ./generic/xotcl.c:10791: error: invalid storage class for function 'XOTcl_ExitProc' ./generic/xotcl.c:10792: error: 'XOTcl_ExitProc' undeclared (first use in this function) ./generic/xotcl.c:10792: error: (Each undeclared identifier is reported only once ./generic/xotcl.c:10792: error: for each function it appears in.) make: *** [xotcl.o] Error 1 ############## snip ##############
To resolve the issue, the nested function XOTcl_ExitProc has to be moved to the top level. A patch is attached to the email. The patched version compiles perfectly and passes the entire bunch of tests.
regards,
//stefan