Yeah, but is it a problem? If your callback returns integer(0) then retval will be safely casted to zero. If not, then it was your choice to use floats