[Insight-developers] ImageRegistration{3, 4, 5}Tcl tests failing on Linux 64 bit compiles

Kent Williams norman-k-williams at uiowa.edu
Wed Jun 1 18:29:14 EDT 2005


Hans asked me to take a look at this problem -- wrapped Image 
Registration using TCL is dumping core on 64bit Linux.

The problem is easy enough to find, but I'm not clear on how to fix it.

In the Swig-generated function 
_wrap_itkRegularStepGradientDescentOptimizer_Pointer_AddObserver__SWIG_0,
a call is made to SWIG_GetArgs, which looks to be a SWIG helper function 
that is a VARARGS function. This looks rather like scanf-style function, 
but the va_start and va_arg macros apparently aren't doing the right 
thing -- on line 780 of swigrunTcl.cxx,
'vptr' has a value of 0x2a0000000000, which isn't valid.

Further mystifying me, the call to SWIG_GetArgs in 
_wrap_itkRegularStepGradientDescentOptimizer_Pointer_AddObserver__SWIG_0:

SWIG_GetArgs(interp, objc, 
objv,"ooo:itkRegularStepGradientDescentOptimizer_Pointer_AddObserver 
self itk::EventObject const & itk::Command * ",0,0,0)

Maybe I just don't understand SWIG_GetArgs, but it looks like zeroes are 
getting passed in where pointers to pointers to Tcl_Obj are expected.

This could be bad code generated by wrapping, but I don't know.  Since 
all these tests fail similarly I suspect they all have the same problem.



More information about the Insight-developers mailing list