diff --git a/algo/detectors/tof/Hitfind.cxx b/algo/detectors/tof/Hitfind.cxx
index 824630044e607f9fa4ecbe68737c6f2b61749b17..5e98952dc4e41561033a316587f22dd87e7e135e 100644
--- a/algo/detectors/tof/Hitfind.cxx
+++ b/algo/detectors/tof/Hitfind.cxx
@@ -75,8 +75,11 @@ namespace cbm::algo::tof
   Hitfind::resultType Hitfind::operator()(gsl::span<CbmTofDigi> digiIn)
   {
     // --- Output data
-    resultType result                   = {};
-    auto& [clusterTs, monitor, digiInd] = result;
+    resultType result = {};
+    //auto& [clusterTs, monitor, digiInd] = result;    // TO DO: Re-activte this when compiler bug is fixed
+    auto& clusterTs = std::get<0>(result);
+    auto& monitor   = std::get<1>(result);
+    auto& digiInd   = std::get<2>(result);
 
     // Loop over the digis array and store the Digis in separate vectors for
     // each RPC modules
@@ -123,7 +126,12 @@ namespace cbm::algo::tof
         indPrefix.resize(nthreads + 1);
       }
 
-      auto [clusters, sizes, addresses, indices] = Clusterizer::resultType();
+      //auto [clusters, sizes, addresses, indices] = Clusterizer::resultType();    // TO DO: Re-activte this when compiler bug is fixed
+      auto localresult = Clusterizer::resultType();
+      auto& clusters   = std::get<0>(localresult);
+      auto& sizes      = std::get<1>(localresult);
+      auto& addresses  = std::get<2>(localresult);
+      auto& indices    = std::get<3>(localresult);
 
       CBM_OMP(for schedule(dynamic) nowait)
       for (uint32_t iRpc = 0; iRpc < fAlgo.size(); iRpc++) {
@@ -132,7 +140,12 @@ namespace cbm::algo::tof
         std::vector<std::pair<CbmTofDigi, int32_t>>& digiExp = *fStorDigiPtr[iRpc];
 
         // Build clusters
-        auto [rpc_clu, rpc_size, rpc_addr, rpc_ind] = fAlgo[iRpc](digiExp);
+        //auto [rpc_clu, rpc_size, rpc_addr, rpc_ind] = fAlgo[iRpc](digiExp);     // TO DO: Re-activte this when compiler bug is fixed
+        auto rpc_result = fAlgo[iRpc](digiExp);
+        auto& rpc_clu   = std::get<0>(rpc_result);
+        auto& rpc_size  = std::get<1>(rpc_result);
+        auto& rpc_addr  = std::get<2>(rpc_result);
+        auto& rpc_ind   = std::get<3>(rpc_result);
 
         // Append clusters to output
         clusters.insert(clusters.end(), std::make_move_iterator(rpc_clu.begin()),