Interesting, I wasn't aware of that and thought the compiler would at least throw up a warning if it had seen that function prototype.
For example, both compilers do complain if you try to pass a literal NULL to `f1` (because that can't possibly be right), the same way they warn about division by a literal zero but give no warnings about dividing by a number that is not known to be nonzero.