Dalla mia ricerca attuale finora (anche se potrei aver perso qualcosa) devo essere d'accordo con Devart sul fatto che non è possibile eseguire il debug delle funzioni UDF.
Un consiglio in più da darti è di usare lo stderr per il debug. Ho creato qualcosa di piuttosto semplice con cui lavorare:
void udf_debug( char *msg, ... ) {
#ifdef DEBUG
va_list ap;
va_start(ap, msg);
vfprintf(stderr, msg, ap);
va_end(ap);
fflush(stderr);
#endif
}