Integer multiplication with overflow checking
#include <safemult.h>
int imult32(int32 a,int32 b,int32* c);
imult32 does c=a*b and returns 1.
In case of an integer overflow, imult32 leaves c alone and returns 0.
imult16(3), umult32(3), imult64(3)