Given how often this pattern appears, I think this is a prime candidate for resolveFuncCall() to return some sort of error indication instead, for example setting f->errors to true, or perhaps returning NULL.