Ну в таких ситуациях обычная практика наверное перехватывать в рабочем потоке все исключения, складывая их в std::exception_ptr, а потом кидать в основном потоке, когда тот полезет проверять состояние (запрашивать результат) у этого рабочего потока.
>настаивает только на применении стандарта C++03
А чем это аргументируется?
Говорить дальше не было нужды. Как и все космонавты, капитан Нортон не испытывал особого доверия к явлениям, внешне слишком заманчивым.