Implement F/invoke_if() in C.

This commit fixes #27