Types for the x86 interrupt handler entry points cannot be expressed in C. For i386, the existing type is some approximation, lacking __stdcall attribute and still being wrong for the return type. For amd64, it cannot be even approximated.
Instead, use void (*)(void) which equally serves the purpose, is simpler and allows to unify i386 and amd64.