123b01930e
The setjmp/longjmp error handling mechanism may fail with Microsoft C++ since they utilize the same stack-unwinding mechanism with C++ exception handling. Lua calling longjmp after luaD_rawrunprotected returns causes unpredictable behaviour. On Windows x64 build, this causes lua_error to crash the whole StepMania program. Lua provides the same macros to utilize C++ throw/catch, which effectively solve the problem. Just specify Lua library as C++ code to enable them. Reference: https://docs.microsoft.com/en-us/cpp/c-runtime-library/reference/longjmp