Currently only separate OMPParallel and OMPLoop support reproducible reductions because we create a summation variable inside the parallel region, however, we can potentially get rid of the variable holding the thread number and add support for:
LFRicOMPParallelLoopTrans().apply(loop, {"reprod": True})
See discussion in #3226 (comment)