http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60100
--- Comment #6 from lavr at ncbi dot nlm.nih.gov --- The .c file has a lot of headers included. Do you want all of them, as well? OTOH, the code in the preprocessed file clearly shows the use of a function pointer of mismatched type gone un-warned. I can't exactly understand how the .c file can help in better understanding why there is no warning where it had to be. The warning itself (from the .c compilation) is shown in one of my previous comments, so you can easily locate the relevant place in the .i file, I guess.