Just to summerise the issue in case anyone else will be encounter something similar.

I want to use <execution> header from C++17 with GCC9 That requires Intel's TBB library and includes Both Qt and TBB use emit that is replaced by Qt. To solve this locally, I've undefined "emit" before using <execution> header. The general solution is to use -DQT_NO_KEYWORDS and replace emit/signal with Q_SIGNALS/ Q_SLOTS gcc9 uses task class from TBB that was deprecated in 2020. The solution is to use TBB 2019 or a newer GCC.