Sema: explain why we tried to call an `extern fn` at comptime

I recently saw a user hit the "comptime call of extern function" error,
and get confused because they didn't know why the scope was `comptime`.
So, use `explainWhyBlockIsComptime` on this and related errors to add
all the relevant notes.

The added test case shows the motivating situation.
107b65ec5dmlugg committed on 1/29/2025, 6:43:24 PMparent484f723
8 files changedLine totals unavailable