Настроить:
try {
throw MyException("Bla-Bla");
} catch(const MyException& e) {
LOG("got " << e.what());
}
CLI-версия PHP показывает, что я «получил Bla-Bla», где я ожидаю (пользовательский логгер). Но PHP-модуль apache запускает тот же код и вылетает за исключением неперехваченного исключения:
terminate called after throwing an instance of 'MyException'
what(): Bla-Bla
[Wed Oct 07 14:12:41 2015] [notice] child pid 12614 exit signal Abort trap (6)
Php_module.so собран из тех же источников, что и PHP CLI, но флаги GCC, используемые для компиляции php_module.so, мне неизвестны. Может ли некоторый набор флагов gcc (используемый для компиляции php_module.so) повлиять на поведение исключений custom.so?
ОБНОВИТЬ
Кажется, это ошибка GCC, потому что использование clang решает проблему.
Задача ещё не решена.
Других решений пока нет …