[ 3%] Building CUDA object CMakeFiles/src.dir/src/Data_output/Histogram.cu.o /home/joseph/Dropbox/Documents/Work/Projects/MDA_Microdosimetry/software/SuperTrack/src/Data_output/Histogram.cu(155): warning #1444-D: function "cudaDeviceSynchronize" /usr/local/cuda/bin/../targets/x86_64-linux/include/cuda_device_runtime_api.h(196): here was declared deprecated ("Use of cudaDeviceSynchronize from device code is deprecated. Moreover, such use will cause this module to fail to load on sm_90+ devices. If calls to cudaDeviceSynchronize from device code cannot be removed for older devices at this time, you may guard them with __CUDA_ARCH__ macros to remove them only for sm_90+ devices, making sure to generate code for compute_90 for the macros to take effect. Note that this mitigation will no longer work when support for cudaDeviceSynchronize from device code is eventually dropped for all devices. Disable this warning with -D__CDPRT_SUPPRESS_SYNC_DEPRECATION_WARNING.") Remark: The warnings can be suppressed with "-diag-suppress " /usr/local/etc/root_install/include/TStorage.h:131:37: warning: declaration of ‘static void TStorage::UpdateIsOnHeap(const volatile UInt_t&, volatile UInt_t&)’ with attribute ‘noinline’ follows inline declaration [-Wattributes] 131 | R__NEVER_INLINE void TStorage::UpdateIsOnHeap(volatile const UInt_t &uniqueID, volatile UInt_t &bits) { | ^~~~~~~~ /usr/local/etc/root_install/include/TStorage.h:91:20: note: previous declaration of ‘static void TStorage::UpdateIsOnHeap(const volatile UInt_t&, volatile UInt_t&)’ here 91 | static void UpdateIsOnHeap(volatile const UInt_t &uniqueID, volatile UInt_t &bits); | ^~~~~~~~~~~~~~ [ 6%] Building CUDA object CMakeFiles/src.dir/src/GPU_helper_types/CubStorageBuffer.cu.o [ 10%] Building CUDA object CMakeFiles/src.dir/src/GPU_helper_types/Track.cu.o /usr/local/etc/root_install/include/TTreeReaderValue.h(121): warning #108-D: signed bit field of length 1 Remark: The warnings can be suppressed with "-diag-suppress " /usr/local/etc/root_install/include/TTreeReaderValue.h(122): warning #108-D: signed bit field of length 1 /usr/local/etc/root_install/include/TTreeReaderValue.h(121): warning #108-D: signed bit field of length 1 Remark: The warnings can be suppressed with "-diag-suppress " /usr/local/etc/root_install/include/TTreeReaderValue.h(122): warning #108-D: signed bit field of length 1 /usr/local/etc/root_install/include/TStorage.h:131:37: warning: declaration of ‘static void TStorage::UpdateIsOnHeap(const volatile UInt_t&, volatile UInt_t&)’ with attribute ‘noinline’ follows inline declaration [-Wattributes] 131 | R__NEVER_INLINE void TStorage::UpdateIsOnHeap(volatile const UInt_t &uniqueID, volatile UInt_t &bits) { | ^~~~~~~~ /usr/local/etc/root_install/include/TStorage.h:91:20: note: previous declaration of ‘static void TStorage::UpdateIsOnHeap(const volatile UInt_t&, volatile UInt_t&)’ here 91 | static void UpdateIsOnHeap(volatile const UInt_t &uniqueID, volatile UInt_t &bits); | ^~~~~~~~~~~~~~ [ 13%] Building CUDA object CMakeFiles/src.dir/src/GPU_helper_types/VolumeEdepPair.cu.o [ 16%] Building CUDA object CMakeFiles/src.dir/src/Simulation_method/SimulationMethod.cu.o /usr/local/etc/root_install/include/TStorage.h:131:37: warning: declaration of ‘static void TStorage::UpdateIsOnHeap(const volatile UInt_t&, volatile UInt_t&)’ with attribute ‘noinline’ follows inline declaration [-Wattributes] 131 | R__NEVER_INLINE void TStorage::UpdateIsOnHeap(volatile const UInt_t &uniqueID, volatile UInt_t &bits) { | ^~~~~~~~ /usr/local/etc/root_install/include/TStorage.h:91:20: note: previous declaration of ‘static void TStorage::UpdateIsOnHeap(const volatile UInt_t&, volatile UInt_t&)’ here 91 | static void UpdateIsOnHeap(volatile const UInt_t &uniqueID, volatile UInt_t &bits); | ^~~~~~~~~~~~~~ [ 20%] Building CUDA object CMakeFiles/src.dir/src/Simulation_method/SimulationMethodFactory.cu.o /usr/local/etc/root_install/include/TStorage.h:131:37: warning: declaration of ‘static void TStorage::UpdateIsOnHeap(const volatile UInt_t&, volatile UInt_t&)’ with attribute ‘noinline’ follows inline declaration [-Wattributes] 131 | R__NEVER_INLINE void TStorage::UpdateIsOnHeap(volatile const UInt_t &uniqueID, volatile UInt_t &bits) { | ^~~~~~~~ /usr/local/etc/root_install/include/TStorage.h:91:20: note: previous declaration of ‘static void TStorage::UpdateIsOnHeap(const volatile UInt_t&, volatile UInt_t&)’ here 91 | static void UpdateIsOnHeap(volatile const UInt_t &uniqueID, volatile UInt_t &bits); | ^~~~~~~~~~~~~~ /home/joseph/Dropbox/Documents/Work/Projects/MDA_Microdosimetry/software/SuperTrack/src/Simulation_method/SimulationMethodFactory.cu: In member function ‘SimulationMethod* SimulationMethodFactory::Construct(const INIReader&)’: /home/joseph/Dropbox/Documents/Work/Projects/MDA_Microdosimetry/software/SuperTrack/src/Simulation_method/SimulationMethodFactory.cu:26:1: warning: control reaches end of non-void function [-Wreturn-type] 26 | } | ^ [ 23%] Building CUDA object CMakeFiles/src.dir/src/Simulation_method/VoxelConstrainedSphereMethod/SphericalGeometry.cu.o [ 26%] Building CUDA object CMakeFiles/src.dir/src/Simulation_method/VoxelConstrainedSphereMethod/VoxelConstrainedSphereMethod.cu.o /usr/local/etc/root_install/include/TStorage.h:131:37: warning: declaration of ‘static void TStorage::UpdateIsOnHeap(const volatile UInt_t&, volatile UInt_t&)’ with attribute ‘noinline’ follows inline declaration [-Wattributes] 131 | R__NEVER_INLINE void TStorage::UpdateIsOnHeap(volatile const UInt_t &uniqueID, volatile UInt_t &bits) { | ^~~~~~~~ /usr/local/etc/root_install/include/TStorage.h:91:20: note: previous declaration of ‘static void TStorage::UpdateIsOnHeap(const volatile UInt_t&, volatile UInt_t&)’ here 91 | static void UpdateIsOnHeap(volatile const UInt_t &uniqueID, volatile UInt_t &bits); | ^~~~~~~~~~~~~~ [ 30%] Building CUDA object CMakeFiles/src.dir/src/SuperTrackManager.cu.o /usr/local/etc/root_install/include/TTreeReaderValue.h(121): warning #108-D: signed bit field of length 1 Remark: The warnings can be suppressed with "-diag-suppress " /usr/local/etc/root_install/include/TTreeReaderValue.h(122): warning #108-D: signed bit field of length 1 /usr/local/etc/root_install/include/TTreeReaderValue.h(121): warning #108-D: signed bit field of length 1 Remark: The warnings can be suppressed with "-diag-suppress " /usr/local/etc/root_install/include/TTreeReaderValue.h(122): warning #108-D: signed bit field of length 1 /usr/local/etc/root_install/include/TStorage.h:131:37: warning: declaration of ‘static void TStorage::UpdateIsOnHeap(const volatile UInt_t&, volatile UInt_t&)’ with attribute ‘noinline’ follows inline declaration [-Wattributes] 131 | R__NEVER_INLINE void TStorage::UpdateIsOnHeap(volatile const UInt_t &uniqueID, volatile UInt_t &bits) { | ^~~~~~~~ /usr/local/etc/root_install/include/TStorage.h:91:20: note: previous declaration of ‘static void TStorage::UpdateIsOnHeap(const volatile UInt_t&, volatile UInt_t&)’ here 91 | static void UpdateIsOnHeap(volatile const UInt_t &uniqueID, volatile UInt_t &bits); | ^~~~~~~~~~~~~~ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:191:1: error: no declaration matches ‘std::vector::type> ROOT::TExecutorCRTP::Map(F, ROOT::TSeq)’ 191 | auto TExecutorCRTP::Map(F func, ROOT::TSeq args) -> std::vector::type> | ^~~~~~~~~~~~~~~~~~~~ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:124:72: note: candidates are: ‘template template std::vector::type> ROOT::TExecutorCRTP::Map(F, const std::vector&)’ 124 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:122:72: note: ‘template template std::vector::type> ROOT::TExecutorCRTP::Map(F, std::vector&)’ 122 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:120:72: note: ‘template template std::vector::type> ROOT::TExecutorCRTP::Map(F, std::initializer_list)’ 120 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:118:84: note: ‘template template std::vector::type> ROOT::TExecutorCRTP::Map(F, ROOT::TSeq)’ 118 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:116:60: note: ‘template template std::vector::type> ROOT::TExecutorCRTP::Map(F, unsigned int)’ 116 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:102:7: note: ‘class ROOT::TExecutorCRTP’ defined here 102 | class TExecutorCRTP { | ^~~~~~~~~~~~~ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:203:1: error: no declaration matches ‘std::vector::type> ROOT::TExecutorCRTP::Map(F, std::initializer_list)’ 203 | auto TExecutorCRTP::Map(F func, std::initializer_list args) -> std::vector::type> | ^~~~~~~~~~~~~~~~~~~~ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:124:72: note: candidates are: ‘template template std::vector::type> ROOT::TExecutorCRTP::Map(F, const std::vector&)’ 124 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:122:72: note: ‘template template std::vector::type> ROOT::TExecutorCRTP::Map(F, std::vector&)’ 122 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:120:72: note: ‘template template std::vector::type> ROOT::TExecutorCRTP::Map(F, std::initializer_list)’ 120 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:118:84: note: ‘template template std::vector::type> ROOT::TExecutorCRTP::Map(F, ROOT::TSeq)’ 118 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:116:60: note: ‘template template std::vector::type> ROOT::TExecutorCRTP::Map(F, unsigned int)’ 116 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:102:7: note: ‘class ROOT::TExecutorCRTP’ defined here 102 | class TExecutorCRTP { | ^~~~~~~~~~~~~ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:217:1: error: no declaration matches ‘std::vector::type> ROOT::TExecutorCRTP::Map(F, std::vector&)’ 217 | auto TExecutorCRTP::Map(F func, std::vector &args) -> std::vector::type> | ^~~~~~~~~~~~~~~~~~~~ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:124:72: note: candidates are: ‘template template std::vector::type> ROOT::TExecutorCRTP::Map(F, const std::vector&)’ 124 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:122:72: note: ‘template template std::vector::type> ROOT::TExecutorCRTP::Map(F, std::vector&)’ 122 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:120:72: note: ‘template template std::vector::type> ROOT::TExecutorCRTP::Map(F, std::initializer_list)’ 120 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:118:84: note: ‘template template std::vector::type> ROOT::TExecutorCRTP::Map(F, ROOT::TSeq)’ 118 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:116:60: note: ‘template template std::vector::type> ROOT::TExecutorCRTP::Map(F, unsigned int)’ 116 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:102:7: note: ‘class ROOT::TExecutorCRTP’ defined here 102 | class TExecutorCRTP { | ^~~~~~~~~~~~~ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:230:1: error: no declaration matches ‘std::vector::type> ROOT::TExecutorCRTP::Map(F, const std::vector&)’ 230 | auto TExecutorCRTP::Map(F func, const std::vector &args) -> std::vector::type> | ^~~~~~~~~~~~~~~~~~~~ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:124:72: note: candidates are: ‘template template std::vector::type> ROOT::TExecutorCRTP::Map(F, const std::vector&)’ 124 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:122:72: note: ‘template template std::vector::type> ROOT::TExecutorCRTP::Map(F, std::vector&)’ 122 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:120:72: note: ‘template template std::vector::type> ROOT::TExecutorCRTP::Map(F, std::initializer_list)’ 120 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:118:84: note: ‘template template std::vector::type> ROOT::TExecutorCRTP::Map(F, ROOT::TSeq)’ 118 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:116:60: note: ‘template template std::vector::type> ROOT::TExecutorCRTP::Map(F, unsigned int)’ 116 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:102:7: note: ‘class ROOT::TExecutorCRTP’ defined here 102 | class TExecutorCRTP { | ^~~~~~~~~~~~~ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:257:1: error: no declaration matches ‘typename std::result_of::type ROOT::TExecutorCRTP::MapReduce(F, ROOT::TSeq, R)’ 257 | auto TExecutorCRTP::MapReduce(F func, ROOT::TSeq args, R redfunc) -> typename std::result_of::type | ^~~~~~~~~~~~~~~~~~~~ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:142:70: note: candidates are: ‘template template T* ROOT::TExecutorCRTP::MapReduce(F, const std::vector&)’ 142 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:140:70: note: ‘template template T* ROOT::TExecutorCRTP::MapReduce(F, std::vector&)’ 140 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:138:81: note: ‘template template typename std::result_of::type ROOT::TExecutorCRTP::MapReduce(F, std::vector&, R)’ 138 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:136:81: note: ‘template template typename std::result_of::type ROOT::TExecutorCRTP::MapReduce(F, const std::vector&, R)’ 136 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:134:81: note: ‘template template typename std::result_of::type ROOT::TExecutorCRTP::MapReduce(F, std::initializer_list, R)’ 134 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:132:93: note: ‘template template typename std::result_of::type ROOT::TExecutorCRTP::MapReduce(F, ROOT::TSeq, R)’ 132 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:130:69: note: ‘template template typename std::result_of::type ROOT::TExecutorCRTP::MapReduce(F, unsigned int, R)’ 130 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:102:7: note: ‘class ROOT::TExecutorCRTP’ defined here 102 | class TExecutorCRTP { | ^~~~~~~~~~~~~ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:270:1: error: no declaration matches ‘typename std::result_of::type ROOT::TExecutorCRTP::MapReduce(F, std::initializer_list, R)’ 270 | auto TExecutorCRTP::MapReduce(F func, std::initializer_list args, R redfunc) -> typename std::result_of::type | ^~~~~~~~~~~~~~~~~~~~ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:142:70: note: candidates are: ‘template template T* ROOT::TExecutorCRTP::MapReduce(F, const std::vector&)’ 142 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:140:70: note: ‘template template T* ROOT::TExecutorCRTP::MapReduce(F, std::vector&)’ 140 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:138:81: note: ‘template template typename std::result_of::type ROOT::TExecutorCRTP::MapReduce(F, std::vector&, R)’ 138 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:136:81: note: ‘template template typename std::result_of::type ROOT::TExecutorCRTP::MapReduce(F, const std::vector&, R)’ 136 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:134:81: note: ‘template template typename std::result_of::type ROOT::TExecutorCRTP::MapReduce(F, std::initializer_list, R)’ 134 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:132:93: note: ‘template template typename std::result_of::type ROOT::TExecutorCRTP::MapReduce(F, ROOT::TSeq, R)’ 132 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:130:69: note: ‘template template typename std::result_of::type ROOT::TExecutorCRTP::MapReduce(F, unsigned int, R)’ 130 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:102:7: note: ‘class ROOT::TExecutorCRTP’ defined here 102 | class TExecutorCRTP { | ^~~~~~~~~~~~~ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:284:1: error: no declaration matches ‘typename std::result_of::type ROOT::TExecutorCRTP::MapReduce(F, std::vector&, R)’ 284 | auto TExecutorCRTP::MapReduce(F func, std::vector &args, R redfunc) -> typename std::result_of::type | ^~~~~~~~~~~~~~~~~~~~ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:142:70: note: candidates are: ‘template template T* ROOT::TExecutorCRTP::MapReduce(F, const std::vector&)’ 142 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:140:70: note: ‘template template T* ROOT::TExecutorCRTP::MapReduce(F, std::vector&)’ 140 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:138:81: note: ‘template template typename std::result_of::type ROOT::TExecutorCRTP::MapReduce(F, std::vector&, R)’ 138 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:136:81: note: ‘template template typename std::result_of::type ROOT::TExecutorCRTP::MapReduce(F, const std::vector&, R)’ 136 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:134:81: note: ‘template template typename std::result_of::type ROOT::TExecutorCRTP::MapReduce(F, std::initializer_list, R)’ 134 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:132:93: note: ‘template template typename std::result_of::type ROOT::TExecutorCRTP::MapReduce(F, ROOT::TSeq, R)’ 132 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:130:69: note: ‘template template typename std::result_of::type ROOT::TExecutorCRTP::MapReduce(F, unsigned int, R)’ 130 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:102:7: note: ‘class ROOT::TExecutorCRTP’ defined here 102 | class TExecutorCRTP { | ^~~~~~~~~~~~~ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:296:1: error: no declaration matches ‘typename std::result_of::type ROOT::TExecutorCRTP::MapReduce(F, const std::vector&, R)’ 296 | auto TExecutorCRTP::MapReduce(F func, const std::vector &args, R redfunc) -> typename std::result_of::type | ^~~~~~~~~~~~~~~~~~~~ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:142:70: note: candidates are: ‘template template T* ROOT::TExecutorCRTP::MapReduce(F, const std::vector&)’ 142 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:140:70: note: ‘template template T* ROOT::TExecutorCRTP::MapReduce(F, std::vector&)’ 140 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:138:81: note: ‘template template typename std::result_of::type ROOT::TExecutorCRTP::MapReduce(F, std::vector&, R)’ 138 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:136:81: note: ‘template template typename std::result_of::type ROOT::TExecutorCRTP::MapReduce(F, const std::vector&, R)’ 136 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:134:81: note: ‘template template typename std::result_of::type ROOT::TExecutorCRTP::MapReduce(F, std::initializer_list, R)’ 134 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:132:93: note: ‘template template typename std::result_of::type ROOT::TExecutorCRTP::MapReduce(F, ROOT::TSeq, R)’ 132 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:130:69: note: ‘template template typename std::result_of::type ROOT::TExecutorCRTP::MapReduce(F, unsigned int, R)’ 130 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:102:7: note: ‘class ROOT::TExecutorCRTP’ defined here 102 | class TExecutorCRTP { | ^~~~~~~~~~~~~ /usr/local/etc/root_install/include/ROOT/TProcessExecutor.hxx:159:1: error: no declaration matches ‘std::vector::type, std::allocator::type> > ROOT::TProcessExecutor::MapImpl(F, std::vector&)’ 159 | auto TProcessExecutor::MapImpl(F func, std::vector &args) -> std::vector::type> | ^~~~~~~~~~~~~~~~ /usr/local/etc/root_install/include/ROOT/TProcessExecutor.hxx:82:72: note: candidates are: ‘template std::vector::type, std::allocator::type> > ROOT::TProcessExecutor::MapImpl(F, const std::vector&)’ 82 | template> | ^ /usr/local/etc/root_install/include/ROOT/TProcessExecutor.hxx:80:72: note: ‘template std::vector::type, std::allocator::type> > ROOT::TProcessExecutor::MapImpl(F, std::vector&)’ 80 | template> | ^ /usr/local/etc/root_install/include/ROOT/TProcessExecutor.hxx:78:84: note: ‘template std::vector::type, std::allocator::type> > ROOT::TProcessExecutor::MapImpl(F, ROOT::TSeq)’ 78 | template> | ^ /usr/local/etc/root_install/include/ROOT/TProcessExecutor.hxx:76:69: note: ‘template std::vector::type, std::allocator::type> > ROOT::TProcessExecutor::MapImpl(F, unsigned int)’ 76 | template> | ^ /usr/local/etc/root_install/include/ROOT/TProcessExecutor.hxx:37:7: note: ‘class ROOT::TProcessExecutor’ defined here 37 | class TProcessExecutor : public TExecutorCRTP, private TMPClient { | ^~~~~~~~~~~~~~~~ /usr/local/etc/root_install/include/ROOT/TProcessExecutor.hxx:204:1: error: no declaration matches ‘std::vector::type, std::allocator::type> > ROOT::TProcessExecutor::MapImpl(F, const std::vector&)’ 204 | auto TProcessExecutor::MapImpl(F func, const std::vector &args) -> std::vector::type> | ^~~~~~~~~~~~~~~~ /usr/local/etc/root_install/include/ROOT/TProcessExecutor.hxx:82:72: note: candidates are: ‘template std::vector::type, std::allocator::type> > ROOT::TProcessExecutor::MapImpl(F, const std::vector&)’ 82 | template> | ^ /usr/local/etc/root_install/include/ROOT/TProcessExecutor.hxx:80:72: note: ‘template std::vector::type, std::allocator::type> > ROOT::TProcessExecutor::MapImpl(F, std::vector&)’ 80 | template> | ^ /usr/local/etc/root_install/include/ROOT/TProcessExecutor.hxx:78:84: note: ‘template std::vector::type, std::allocator::type> > ROOT::TProcessExecutor::MapImpl(F, ROOT::TSeq)’ 78 | template> | ^ /usr/local/etc/root_install/include/ROOT/TProcessExecutor.hxx:76:69: note: ‘template std::vector::type, std::allocator::type> > ROOT::TProcessExecutor::MapImpl(F, unsigned int)’ 76 | template> | ^ /usr/local/etc/root_install/include/ROOT/TProcessExecutor.hxx:37:7: note: ‘class ROOT::TProcessExecutor’ defined here 37 | class TProcessExecutor : public TExecutorCRTP, private TMPClient { | ^~~~~~~~~~~~~~~~ /usr/local/etc/root_install/include/ROOT/TProcessExecutor.hxx:249:1: error: no declaration matches ‘std::vector::type, std::allocator::type> > ROOT::TProcessExecutor::MapImpl(F, ROOT::TSeq)’ 249 | auto TProcessExecutor::MapImpl(F func, ROOT::TSeq args) -> std::vector::type> | ^~~~~~~~~~~~~~~~ /usr/local/etc/root_install/include/ROOT/TProcessExecutor.hxx:82:72: note: candidates are: ‘template std::vector::type, std::allocator::type> > ROOT::TProcessExecutor::MapImpl(F, const std::vector&)’ 82 | template> | ^ /usr/local/etc/root_install/include/ROOT/TProcessExecutor.hxx:80:72: note: ‘template std::vector::type, std::allocator::type> > ROOT::TProcessExecutor::MapImpl(F, std::vector&)’ 80 | template> | ^ /usr/local/etc/root_install/include/ROOT/TProcessExecutor.hxx:78:84: note: ‘template std::vector::type, std::allocator::type> > ROOT::TProcessExecutor::MapImpl(F, ROOT::TSeq)’ 78 | template> | ^ /usr/local/etc/root_install/include/ROOT/TProcessExecutor.hxx:76:69: note: ‘template std::vector::type, std::allocator::type> > ROOT::TProcessExecutor::MapImpl(F, unsigned int)’ 76 | template> | ^ /usr/local/etc/root_install/include/ROOT/TProcessExecutor.hxx:37:7: note: ‘class ROOT::TProcessExecutor’ defined here 37 | class TProcessExecutor : public TExecutorCRTP, private TMPClient { | ^~~~~~~~~~~~~~~~ /usr/local/etc/root_install/include/ROOT/TProcessExecutor.hxx:301:1: error: no declaration matches ‘typename std::result_of::type ROOT::TProcessExecutor::MapReduce(F, std::vector&, R)’ 301 | auto TProcessExecutor::MapReduce(F func, std::vector &args, R redfunc) -> typename std::result_of::type | ^~~~~~~~~~~~~~~~ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:132:93: note: candidates are: ‘template typename std::result_of::type ROOT::TExecutorCRTP::MapReduce(F, ROOT::TSeq, R) [with F = F; INTEGER = INTEGER; R = R; Cond = Cond; SubC = ROOT::TProcessExecutor]’ 132 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:134:81: note: ‘template typename std::result_of::type ROOT::TExecutorCRTP::MapReduce(F, std::initializer_list, R) [with F = F; T = T; R = R; Cond = Cond; SubC = ROOT::TProcessExecutor]’ 134 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:140:70: note: ‘template T* ROOT::TExecutorCRTP::MapReduce(F, std::vector&) [with F = F; T = T; Cond = Cond; SubC = ROOT::TProcessExecutor]’ 140 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:142:70: note: ‘template T* ROOT::TExecutorCRTP::MapReduce(F, const std::vector&) [with F = F; T = T; Cond = Cond; SubC = ROOT::TProcessExecutor]’ 142 | template> | ^ /usr/local/etc/root_install/include/ROOT/TProcessExecutor.hxx:58:81: note: ‘template typename std::result_of::type ROOT::TProcessExecutor::MapReduce(F, const std::vector&, R)’ 58 | template> | ^ /usr/local/etc/root_install/include/ROOT/TProcessExecutor.hxx:56:81: note: ‘template typename std::result_of::type ROOT::TProcessExecutor::MapReduce(F, std::vector&, R)’ 56 | template> | ^ /usr/local/etc/root_install/include/ROOT/TProcessExecutor.hxx:54:69: note: ‘template typename std::result_of::type ROOT::TProcessExecutor::MapReduce(F, unsigned int, R)’ 54 | template> | ^ /usr/local/etc/root_install/include/ROOT/TProcessExecutor.hxx:37:7: note: ‘class ROOT::TProcessExecutor’ defined here 37 | class TProcessExecutor : public TExecutorCRTP, private TMPClient { | ^~~~~~~~~~~~~~~~ /usr/local/etc/root_install/include/ROOT/TProcessExecutor.hxx:343:1: error: no declaration matches ‘typename std::result_of::type ROOT::TProcessExecutor::MapReduce(F, const std::vector&, R)’ 343 | auto TProcessExecutor::MapReduce(F func, const std::vector &args, R redfunc) -> typename std::result_of::type | ^~~~~~~~~~~~~~~~ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:132:93: note: candidates are: ‘template typename std::result_of::type ROOT::TExecutorCRTP::MapReduce(F, ROOT::TSeq, R) [with F = F; INTEGER = INTEGER; R = R; Cond = Cond; SubC = ROOT::TProcessExecutor]’ 132 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:134:81: note: ‘template typename std::result_of::type ROOT::TExecutorCRTP::MapReduce(F, std::initializer_list, R) [with F = F; T = T; R = R; Cond = Cond; SubC = ROOT::TProcessExecutor]’ 134 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:140:70: note: ‘template T* ROOT::TExecutorCRTP::MapReduce(F, std::vector&) [with F = F; T = T; Cond = Cond; SubC = ROOT::TProcessExecutor]’ 140 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:142:70: note: ‘template T* ROOT::TExecutorCRTP::MapReduce(F, const std::vector&) [with F = F; T = T; Cond = Cond; SubC = ROOT::TProcessExecutor]’ 142 | template> | ^ /usr/local/etc/root_install/include/ROOT/TProcessExecutor.hxx:58:81: note: ‘template typename std::result_of::type ROOT::TProcessExecutor::MapReduce(F, const std::vector&, R)’ 58 | template> | ^ /usr/local/etc/root_install/include/ROOT/TProcessExecutor.hxx:56:81: note: ‘template typename std::result_of::type ROOT::TProcessExecutor::MapReduce(F, std::vector&, R)’ 56 | template> | ^ /usr/local/etc/root_install/include/ROOT/TProcessExecutor.hxx:54:69: note: ‘template typename std::result_of::type ROOT::TProcessExecutor::MapReduce(F, unsigned int, R)’ 54 | template> | ^ /usr/local/etc/root_install/include/ROOT/TProcessExecutor.hxx:37:7: note: ‘class ROOT::TProcessExecutor’ defined here 37 | class TProcessExecutor : public TExecutorCRTP, private TMPClient { | ^~~~~~~~~~~~~~~~ /home/joseph/Dropbox/Documents/Work/Projects/MDA_Microdosimetry/software/SuperTrack/src/SuperTrackManager.cu: In member function ‘void SuperTrackManager::Run()’: /home/joseph/Dropbox/Documents/Work/Projects/MDA_Microdosimetry/software/SuperTrack/src/SuperTrackManager.cu:94:83: error: no matching function for call to ‘ROOT::TProcessExecutor::Map(SuperTrackManager::Run()::&, std::vector&)’ 94 | std::vector process_output = workers.Map(threadProcess, _threadAllocations); | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:124:72: note: candidate: ‘template std::vector::type> ROOT::TExecutorCRTP::Map(F, const std::vector&) [with F = F; T = T; Cond = Cond; SubC = ROOT::TProcessExecutor]’ 124 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:124:72: note: template argument deduction/substitution failed: /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx: In substitution of ‘template std::vector::type, std::allocator::type> > ROOT::TExecutorCRTP::Map(F, const std::vector&) [with F = SuperTrackManager::Run()::; T = ThreadAllocation; Cond = void]’: /home/joseph/Dropbox/Documents/Work/Projects/MDA_Microdosimetry/software/SuperTrack/src/SuperTrackManager.cu:94:83: required from here /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:124:72: error: invalid use of incomplete type ‘class std::result_of(ThreadAllocation, ...)>’ /usr/include/c++/9/type_traits:2167:35: note: declaration of ‘class std::result_of(ThreadAllocation, ...)>’ 2167 | template | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:122:72: note: candidate: ‘template std::vector::type> ROOT::TExecutorCRTP::Map(F, std::vector&) [with F = F; T = T; Cond = Cond; SubC = ROOT::TProcessExecutor]’ 122 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:122:72: note: template argument deduction/substitution failed: /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx: In substitution of ‘template std::vector::type, std::allocator::type> > ROOT::TExecutorCRTP::Map(F, std::vector&) [with F = SuperTrackManager::Run()::; T = ThreadAllocation; Cond = void]’: /home/joseph/Dropbox/Documents/Work/Projects/MDA_Microdosimetry/software/SuperTrack/src/SuperTrackManager.cu:94:83: required from here /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:122:72: error: invalid use of incomplete type ‘class std::result_of(ThreadAllocation, ...)>’ /usr/include/c++/9/type_traits:2167:35: note: declaration of ‘class std::result_of(ThreadAllocation, ...)>’ 2167 | template | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:120:72: note: candidate: ‘template std::vector::type> ROOT::TExecutorCRTP::Map(F, std::initializer_list) [with F = F; T = T; Cond = Cond; SubC = ROOT::TProcessExecutor]’ 120 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:120:72: note: template argument deduction/substitution failed: /home/joseph/Dropbox/Documents/Work/Projects/MDA_Microdosimetry/software/SuperTrack/src/SuperTrackManager.cu:94:83: note: ‘std::vector’ is not derived from ‘std::initializer_list<_Up>’ 94 | std::vector process_output = workers.Map(threadProcess, _threadAllocations); | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:118:84: note: candidate: ‘template std::vector::type> ROOT::TExecutorCRTP::Map(F, ROOT::TSeq) [with F = F; INTEGER = INTEGER; Cond = Cond; SubC = ROOT::TProcessExecutor]’ 118 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:118:84: note: template argument deduction/substitution failed: /home/joseph/Dropbox/Documents/Work/Projects/MDA_Microdosimetry/software/SuperTrack/src/SuperTrackManager.cu:94:83: note: ‘std::vector’ is not derived from ‘ROOT::TSeq’ 94 | std::vector process_output = workers.Map(threadProcess, _threadAllocations); | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:116:60: note: candidate: ‘template std::vector::type> ROOT::TExecutorCRTP::Map(F, unsigned int) [with F = F; Cond = Cond; SubC = ROOT::TProcessExecutor]’ 116 | template> | ^ /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:116:60: note: template argument deduction/substitution failed: /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx: In substitution of ‘template template using noReferenceCond = typename std::enable_if<(("Function can\'t return a reference") && (! std::is_reference::type>::value))>::type [with F = SuperTrackManager::Run()::; T = {}; SubC = ROOT::TProcessExecutor]’: /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:116:20: required from here /usr/local/etc/root_install/include/ROOT/TExecutorCRTP.hxx:111:124: error: no type named ‘type’ in ‘class std::result_of()>’ 111 | template< class F, class... T> | ^ make[2]: *** [CMakeFiles/src.dir/build.make:188: CMakeFiles/src.dir/src/SuperTrackManager.cu.o] Error 1 make[1]: *** [CMakeFiles/Makefile2:182: CMakeFiles/src.dir/all] Error 2 make: *** [Makefile:136: all] Error 2