https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89586
--- Comment #4 from Bernd Edlinger <bernd.edlinger at hotmail dot de> --- as long as IMP is not used to call the function you could try to define IMP as "void (*)(void)", that would reliably suppress the warning.