Interaction between '_setjmpex' and C++ object destruction is non-portable

I am trying to include a third party plugin to my game. I have linked all .h and .lib files and it seems to find everything successfully. However, when I try to build, I get an error in one of the .h files:

Error C4611 interaction between '_setjmpex' and C++ object destruction is non-portable

After some research on why this is happening, I couldn’t find something useful. The only thing that I found was similar warnings in other non-UE projects. However, in my case it is an error. The error happens in fz_try, which I guess is a try/catch block:

fz_try(ctx)
{
}
fz_catch(ctx)
{
}

where:

#define fz_setjmp(BUF) setjmp(BUF)

#define fz_try(ctx) \
	{ \
		if (fz_push_try(ctx)) { \
			if (fz_setjmp((ctx)->error->top->buffer) == 0) do \

#define fz_catch(ctx) \
		while (0); \
	} \
} \
if ((ctx->error->top--)->code > 1)

I can provide more information if needed. Any help would be greatly appreciated!