Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
Impala 4.0.0
-
None
-
ghx-label-4
Description
When trying to compile with -std=c+17, multiple files fail to compile due to c+17 incompatible code in libev:
In file included from /home/joe/view2/Impala/be/src/kudu/rpc/connection.h:30:0, from /home/joe/view2/Impala/be/src/kudu/rpc/messenger.h:32, from /home/joe/view2/Impala/be/src/rpc/rpc-mgr.h:22, from /home/joe/view2/Impala/be/src/service/data-stream-service.cc:27: /opt/Impala-Toolchain/toolchain-packages-gcc7.5.0/libev-4.20/include/ev++.h:355:46: error: ISO C++1z does not allow dynamic exception specifications dynamic_loop (unsigned int flags = AUTO) throw (bad_loop) ^~~~~
Kudu already applies a patch to libev's ev++.h to fix this, so we should apply the same patch to libev in native-toolchain.
https://github.com/apache/kudu/blob/master/thirdparty/patches/libev-c17.patch