Silence warnings when passing invocations

When passing invocations that return values, you can end up with
compiler warnings that you're not using the result (for example, when
verifying that an `init` method is called). This isn't ideal, and leads
to having to add ugly `#pragma clang` definitions in your test file.
Instead, we can use the C99 `_Pragma()` function to disable these
warnings inside the macros themselves.