
Hi Monty, Thank you for the review. I will revise https://github.com/MariaDB/server/pull/3966/ accordingly. When it comes to the C++11 noexcept keyword, I believe that there was a reason why -fno-exceptions was included in all the applicable build scripts in the very first public revision of MySQL: https://github.com/MariaDB/server/commit/84626f52fb1ca40ebe0175dfda8cc1a2931.... I see that this GCC option is still present in the BUILD directory in some scripts that are not being used on any CI system that I am aware of. There is a check for __EXCEPTIONS in include/my_global.h, and both GCC 15 and Clang 20 still define that symbol unless -fno-exceptions is specified. But neither one defines the preprocessor symbol __GNUC; it is __GNUC__. It looks like the check that you had implemented back in 2003 in https://github.com/MariaDB/server/commit/8dd439e751f908af22ebd11197fd56ade76... has never worked as intended: #if defined(__GNUC) && defined(__EXCEPTIONS) #error "Please add -fno-exceptions to CXXFLAGS and reconfigure/recompile" #endif Max Kellermann pointed out in https://github.com/MariaDB/server/pull/3529 that exceptions are not disabled in MariaDB and showed that adding the noexcept keyword can have a positive impact. In https://stackoverflow.com/questions/16104057/does-noexcept-improve-performan... you can find some further evidence that using the noexcept keyword may improve performance. With best regards, Marko Mäkelä