Disable C++ exceptions in the kernel driver
CMake puts /EHsc in CMAKE_CXX_FLAGS by default. The /GR it also adds was already being stripped here, but /EHsc was not, and /kernel does not turn exception handling off by itself -- so the driver compiled with _CPPUNWIND defined and every STL and PawnPP throwing path live. Nothing throws today, so the link stayed clean, but noexcept violations lowered to __std_terminate and one throwing instantiation would have pulled in _CxxThrowException/__CxxFrameHandler4, which do not exist in kernel mode. Strip it the same way /GR is stripped, and put it back on PawnIOLib and PawnIOUtil, which are user mode and where PawnIOUtil genuinely relies on throwing STL. The driver now compiles with no /EH option at all.
N
namazso committed
c0b72c1ad053f4b31309414d6ef6ac1b8682f30a
Parent: 7d5e35f