Sorry the code fragment for xim.c contained extraneous characters, should be like this
#ifndef HAVE_XICCALLBACK_CALLBACK typedef struct { XPointer client_data; XICProc callback; } XICCallback; typedef Bool (*XICProc)( XIC, XPointer, XPointer ); #endif