Okay, concretely, I'd like to see a translation of this real-world C++ code (taken from V8):
#define RETURN_OBJECT_UNLESS_EXCEPTION(ISOLATE, RETURN_VALUE, RETURN_EMPTY) \
if (!__allocation__.IsRetry()) { \
__object__ = __allocation__.ToObjectChecked(); \
if (__object__ == (ISOLATE)->heap()->exception()) { RETURN_EMPTY; } \
RETURN_VALUE; \
}