Итак, я читал об обработке исключений protobuf и прочитал следующий документ:
https://groups.google.com/forum/#!topic/protobuf/IFcZQK0QuzI
в частности: мы не используем исключения в protobuf, так как исключения
запрещено в Google C ++ Style Guide:
https://google.github.io/styleguide/cppguide.html#ExceptionsКак таковой код, скорее всего, не будет работать, если некоторые объекты выбрасывают.
Итак, во-первых, в том же руководстве по стилю Google упоминается, что можно использовать std :: hash, но std :: hash является частью STL, который выбрасывает! Как это может работать правильно при компиляции с -fno-exception?
То же самое относится и к protobuf: например, он активно использует std :: string. Как они могут утверждать, что они не бросают исключения?
Благодарю.
Задача ещё не решена.
Других решений пока нет …