Initial Pull Request Sample Two-way Communicator

I'd recommend a different pattern for this. CHECK_TRUE(succ) which internally does a goto End;

You really don't want to return from the middle of a function. This can cause problems with cleaning up memory or other resources.

You'll also want to have CHECK_HR(statement), CHECK_WIN32(statement), and CHECK_ALLOC(statement) which accepts a statement, sets HR to the appropriate value, then jumps to the End label.