check_exp evaluates an _expression_ with lua_assert.
But lua_assert is not defined in the source code.
llimits.h defines it with (void)0 when no definition about lua_assert is available (llimits.h:61~69).
after all, check_exp macro skips the evaluation because lua_assert is NULL.
Although I can work around with defining my lua_assert, I don't think that it's a good idea to leave the macro ( or the function) up to another developers other than lua core developers.
Here, I have some questions.
1. Why do to leave lua_assert undefined?