diff --git a/.clang-tidy b/.clang-tidy index fc4fd05fa1b..f3a73ec0e10 100644 --- a/.clang-tidy +++ b/.clang-tidy @@ -40,7 +40,6 @@ Checks: > -modernize-return-braced-init-list, -modernize-use-constraints, -modernize-use-designated-initializers, - -modernize-use-integer-sign-comparison, -modernize-use-ranges, -modernize-use-starts-ends-with, -modernize-use-std-numbers, @@ -82,5 +81,4 @@ HeaderFileExtensions: ['', "H", 'h', 'hh', 'hpp', 'hxx'] # -modernize-use-designated-initializers # -modernize-use-std-numbers # -modernize-use-ranges -# -modernize-use-integer-sign-comparison # -modernize-use-starts-ends-with diff --git a/Src/Amr/AMReX_AmrLevel.cpp b/Src/Amr/AMReX_AmrLevel.cpp index 156ff8caeaa..8db4ae21e9b 100644 --- a/Src/Amr/AMReX_AmrLevel.cpp +++ b/Src/Amr/AMReX_AmrLevel.cpp @@ -16,6 +16,7 @@ #endif #include +#include #include #include @@ -108,7 +109,7 @@ AmrLevel::AmrLevel (Amr& papa, } // Note that this creates a distribution map associated with grids. - for (int i = 0; i < state.size(); i++) + for (int i = 0; i < std::ssize(state); i++) { MultiFab::RegionTag statedata_tag("StateData_Level_" + std::to_string(lev)); MultiFab::RegionTag statedata_index_tag("StateData_" + std::to_string(i) + "_Level_" + std::to_string(lev)); @@ -143,7 +144,7 @@ AmrLevel::writePlotFile (const std::string& dir, // second component of pair is component # within the state_type // std::vector > plot_var_map; - for (int typ = 0; typ < desc_lst.size(); typ++) + for (int typ = 0; typ < std::ssize(desc_lst); typ++) { for (int comp = 0; comp < desc_lst[typ].nComp();comp++) { @@ -197,7 +198,7 @@ AmrLevel::writePlotFile (const std::string& dir, // // Names of variables // - for (i =0; i < static_cast(plot_var_map.size()); i++) + for (i =0; i < std::ssize(plot_var_map); i++) { int typ = plot_var_map[i].first; int comp = plot_var_map[i].second; @@ -286,7 +287,7 @@ AmrLevel::writePlotFile (const std::string& dir, os << level << ' ' << grids.size() << ' ' << cur_time << '\n'; os << parent->levelSteps(level) << '\n'; - for (i = 0; i < grids.size(); ++i) + for (i = 0; i < std::ssize(grids); ++i) { RealBox gridloc = RealBox(grids[i],geom.CellSize(),geom.ProbLo()); for (n = 0; n < AMREX_SPACEDIM; n++) { @@ -326,7 +327,7 @@ AmrLevel::writePlotFile (const std::string& dir, // // Cull data from state variables -- use no ghost cells. // - for (i = 0; i < static_cast(plot_var_map.size()); i++) + for (i = 0; i < std::ssize(plot_var_map); i++) { int typ = plot_var_map[i].first; int comp = plot_var_map[i].second; @@ -477,7 +478,7 @@ AmrLevel::setTimeLevel (Real time, Real dt_old, Real dt_new) { - for (int k = 0; k < desc_lst.size(); k++) + for (int k = 0; k < std::ssize(desc_lst); k++) { state[k].setTimeLevel(time,dt_old,dt_new); } @@ -486,7 +487,7 @@ AmrLevel::setTimeLevel (Real time, bool AmrLevel::isStateVariable (const std::string& name, int& state_indx, int& n) { - for (state_indx = 0; state_indx < desc_lst.size(); state_indx++) + for (state_indx = 0; state_indx < std::ssize(desc_lst); state_indx++) { const StateDescriptor& desc = desc_lst[state_indx]; @@ -577,7 +578,7 @@ AmrLevel::~AmrLevel () void AmrLevel::allocOldData () { - for (int i = 0; i < desc_lst.size(); i++) + for (int i = 0; i < std::ssize(desc_lst); i++) { state[i].allocOldData(); } @@ -586,7 +587,7 @@ AmrLevel::allocOldData () void AmrLevel::removeOldData () { - for (int i = 0; i < desc_lst.size(); i++) + for (int i = 0; i < std::ssize(desc_lst); i++) { state[i].removeOldData(); } @@ -595,7 +596,7 @@ AmrLevel::removeOldData () void AmrLevel::reset () { - for (int i = 0; i < desc_lst.size(); i++) + for (int i = 0; i < std::ssize(desc_lst); i++) { state[i].reset(); } @@ -1013,7 +1014,7 @@ FillPatchIterator::Initialize (int boxGrow, const IndexType& boxType = m_leveldata->boxArray().ixType(); const int level = m_amrlevel->level; - for (int i = 0, DComp = 0; i < static_cast(m_range.size()); i++) + for (int i = 0, DComp = 0; i < std::ssize(m_range); i++) { const int SComp = m_range[i].first; const int NComp = m_range[i].second; diff --git a/Src/Base/AMReX.cpp b/Src/Base/AMReX.cpp index 93529d623a8..05c49663494 100644 --- a/Src/Base/AMReX.cpp +++ b/Src/Base/AMReX.cpp @@ -59,6 +59,8 @@ #include #endif +#include + #ifdef AMREX_USE_OMP #include #include @@ -979,7 +981,7 @@ amrex::command_argument_count () std::string amrex::get_command_argument (int number) { - if (number < static_cast(command_arguments.size())) { + if (number < std::ssize(command_arguments)) { return command_arguments[number]; } else { return std::string(); diff --git a/Src/Base/AMReX_CArena.cpp b/Src/Base/AMReX_CArena.cpp index ed8be19d7d9..2f31753c07a 100644 --- a/Src/Base/AMReX_CArena.cpp +++ b/Src/Base/AMReX_CArena.cpp @@ -37,7 +37,7 @@ void* CArena::alloc_protected (std::size_t nbytes) { bool freeunused_called = false; - if (static_cast(m_used+nbytes) >= arena_info.release_threshold) { + if (std::cmp_greater_equal(m_used+nbytes, arena_info.release_threshold)) { freeUnused_protected(); freeunused_called = true; } diff --git a/Src/Base/AMReX_DistributionMapping.cpp b/Src/Base/AMReX_DistributionMapping.cpp index e88cc0c3597..d6b8d03bb2e 100644 --- a/Src/Base/AMReX_DistributionMapping.cpp +++ b/Src/Base/AMReX_DistributionMapping.cpp @@ -22,6 +22,8 @@ #include #include #include +#include +#include namespace { int flag_verbose_mapper; @@ -177,7 +179,7 @@ void DistributionMapping::Sort (std::vector& vec, bool reverse) { - if (vec.size() > 1) + if (std::ssize(vec) > 1) { if (reverse) { std::stable_sort(vec.begin(), vec.end(), LIpairGT()); @@ -422,7 +424,7 @@ DistributionMapping::RoundRobinDoIt (int nboxes, if (LIpairV) { - BL_ASSERT(static_cast(LIpairV->size()) == nboxes); + BL_ASSERT(std::ssize(*LIpairV) == nboxes); for (int i = 0; i < nboxes; ++i) { @@ -766,7 +768,7 @@ DistributionMapping::KnapSackDoIt (const std::vector& wgts, } } - BL_ASSERT(static_cast(vec.size()) == nteams); + BL_ASSERT(std::ssize(vec) == nteams); std::vector LIpairV; @@ -864,7 +866,7 @@ DistributionMapping::KnapSackProcessorMap (const std::vector& wgts, m_ref->clear(); m_ref->m_pmap.resize(wgts.size()); - if (static_cast(wgts.size()) <= nprocs || nprocs < 2) + if (std::ssize(wgts) <= nprocs || nprocs < 2) { RoundRobinProcessorMap(static_cast(wgts.size()),nprocs, sort); @@ -894,7 +896,7 @@ DistributionMapping::KnapSackProcessorMap (const DistributionMapping& olddm, ComputeDistributionMappingEfficiency(olddm, wgts, &old_efficiency); - if (static_cast(wgts.size()) <= nprocs || nprocs < 2) + if (std::ssize(wgts) <= nprocs || nprocs < 2) { RoundRobinProcessorMap(static_cast(wgts.size()),nprocs, false); new_efficiency = Real(1); @@ -927,7 +929,7 @@ DistributionMapping::KnapSackProcessorMap (const DistributionMapping& olddm, w += wi; } } - if (i < static_cast(kb.size())) { + if (i < std::ssize(kb)) { lb.insert(lb.end(), kb.begin()+i, kb.end()); kb.erase ( kb.begin()+i, kb.end()); } @@ -990,7 +992,7 @@ DistributionMapping::KnapSackProcessorMap (const DistributionMapping& olddm, AMREX_ASSERT(max_weight > Real(0)); new_efficiency = avg_weight / max_weight; - if (new_efficiency < max_efficiency && wblv.size() > 1) { + if (new_efficiency < max_efficiency && std::ssize(wblv) > 1) { BL_PROFILE("knapsack()swap"); std::sort(wblv.begin(), wblv.end()); @@ -1207,7 +1209,7 @@ Distribute (const std::vector& tokens, } } - BL_ASSERT(static_cast(v.size()) == nprocs); + BL_ASSERT(std::ssize(v) == nprocs); int K = 0; Real totalvol = 0; @@ -1502,7 +1504,7 @@ DistributionMapping::SFCProcessorMap (const BoxArray& boxes, bool sort) { BL_ASSERT( ! boxes.empty()); - BL_ASSERT(boxes.size() == static_cast(wgts.size())); + BL_ASSERT(boxes.size() == std::ssize(wgts)); m_ref->clear(); m_ref->m_pmap.resize(wgts.size()); @@ -1525,7 +1527,7 @@ DistributionMapping::SFCProcessorMap (const BoxArray& boxes, bool sort) { BL_ASSERT( ! boxes.empty()); - BL_ASSERT(boxes.size() == static_cast(wgts.size())); + BL_ASSERT(boxes.size() == std::ssize(wgts)); m_ref->clear(); m_ref->m_pmap.resize(wgts.size()); @@ -1948,7 +1950,7 @@ operator<< (std::ostream& os, { os << "(DistributionMapping" << '\n'; - for (int i = 0; i < pmap.ProcessorMap().size(); ++i) + for (int i = 0; i < std::ssize(pmap.ProcessorMap()); ++i) { os << "m_pmap[" << i << "] = " << pmap.ProcessorMap()[i] << '\n'; } @@ -2018,7 +2020,7 @@ DistributionMapping MakeSimilarDM (const BoxArray& ba, const BoxArray& src_ba, "input BoxArrays must have the same centering."); Vector pmap(ba.size()); - for (int i = 0; i < static_cast(ba.size()); ++i) { + for (int i = 0; i < std::ssize(ba); ++i) { Box box = ba[i]; box.grow(ng); bool first_only = false; diff --git a/Src/Base/AMReX_FabArray.H b/Src/Base/AMReX_FabArray.H index 3186ae4276b..8114eadbfb1 100644 --- a/Src/Base/AMReX_FabArray.H +++ b/Src/Base/AMReX_FabArray.H @@ -43,6 +43,7 @@ #include #include +#include #include #include #include @@ -1755,7 +1756,7 @@ bool FabArray::defined (int K) const noexcept { int li = localindex(K); - if (li >= 0 && li < static_cast(m_fabs_v.size()) && m_fabs_v[li] != 0) { + if (li >= 0 && li < std::ssize(m_fabs_v) && m_fabs_v[li] != 0) { return true; } else { @@ -1768,7 +1769,7 @@ bool FabArray::defined (const MFIter& mfi) const noexcept { int li = mfi.LocalIndex(); - if (li < static_cast(m_fabs_v.size()) && m_fabs_v[li] != nullptr) { + if (li < std::ssize(m_fabs_v) && m_fabs_v[li] != nullptr) { return true; } else { @@ -1874,7 +1875,7 @@ FAB* FabArray::release (int K) { const int li = localindex(K); - if (li >= 0 && li < static_cast(m_fabs_v.size()) && m_fabs_v[li] != nullptr) { + if (li >= 0 && li < std::ssize(m_fabs_v) && m_fabs_v[li] != nullptr) { AMREX_ASSERT(m_single_chunk_arena == nullptr); Long nbytes = amrex::nBytesOwned(*m_fabs_v[li]); if (nbytes > 0) { @@ -1894,7 +1895,7 @@ FAB* FabArray::release (const MFIter& mfi) { const int li = mfi.LocalIndex(); - if (li >= 0 && li < static_cast(m_fabs_v.size()) && m_fabs_v[li] != nullptr) { + if (li >= 0 && li < std::ssize(m_fabs_v) && m_fabs_v[li] != nullptr) { AMREX_ASSERT(m_single_chunk_arena == nullptr); Long nbytes = amrex::nBytesOwned(*m_fabs_v[li]); if (nbytes > 0) { diff --git a/Src/Base/AMReX_FabConv.cpp b/Src/Base/AMReX_FabConv.cpp index f07bbed2279..607f1b1e7b5 100644 --- a/Src/Base/AMReX_FabConv.cpp +++ b/Src/Base/AMReX_FabConv.cpp @@ -770,7 +770,7 @@ PD_fconvert (void* out, for (i = 0L; i < nitems; i++, rout += outbytes) { for (j = 0; j < outbytes; j++) { - if ((j == indxout) ? (rout[j] != mask) : rout[j]) { + if ((j == indxout) ? std::cmp_not_equal(rout[j], mask) : rout[j]) { break; } } diff --git a/Src/Base/AMReX_GpuDevice.cpp b/Src/Base/AMReX_GpuDevice.cpp index 1e5423bdb80..1043349cd86 100644 --- a/Src/Base/AMReX_GpuDevice.cpp +++ b/Src/Base/AMReX_GpuDevice.cpp @@ -12,11 +12,12 @@ #endif #include -#include #include +#include +#include +#include #include #include -#include #if defined(AMREX_USE_CUDA) #include @@ -758,7 +759,7 @@ Device::setStream (gpuStream_t s) noexcept } } int const idx = streamIndex(s); - if (idx == static_cast(gpu_stream_pool.size())) { + if (idx == std::ssize(gpu_stream_pool)) { amrex::Abort("Gpu::Device::setStream: stream is not managed by AMReX."); } gpu_stream_index[tid] = idx; diff --git a/Src/Base/AMReX_NFiles.cpp b/Src/Base/AMReX_NFiles.cpp index fd8e5fef60c..f5107ee2c3a 100644 --- a/Src/Base/AMReX_NFiles.cpp +++ b/Src/Base/AMReX_NFiles.cpp @@ -1,6 +1,7 @@ #include #include +#include #include #include @@ -504,7 +505,7 @@ bool NFilesIter::CheckNFiles(int nProcs, int nOutFiles, bool groupSets) } // amrex::Print() << "nOutFiles fileNumbers.size() = " << nOutFiles // << " " << fileNumbers.size() << '\n'; - if(nOutFiles != static_cast(fileNumbers.size())) { + if(nOutFiles != std::ssize(fileNumbers)) { // amrex::Print() << "**** Different number of files." << '\n'; return false; } @@ -529,7 +530,7 @@ Vector NFilesIter::FileNumbersWritten() procSet.insert(fileNumbersWriteOrder[f][r]); } } - if(total != nProcs || static_cast(procSet.size()) != nProcs) { + if(total != nProcs || std::ssize(procSet) != nProcs) { amrex::AllPrint() << "**** Error in NFilesIter::FileNumbersWritten(): " << " coordinatorProc nProcs total procSet.size() = " << coordinatorProc << " " << nProcs << " " diff --git a/Src/Base/AMReX_ParmParse.cpp b/Src/Base/AMReX_ParmParse.cpp index b99c9348aef..8dd9d910733 100644 --- a/Src/Base/AMReX_ParmParse.cpp +++ b/Src/Base/AMReX_ParmParse.cpp @@ -13,6 +13,7 @@ #include #include #include +#include #include #include #include @@ -903,7 +904,7 @@ void pp_entry_set_last_val (ParmParse::PP_entry const& entry, int ival, T ref, b #pragma omp single nowait #endif { - if (ival >= int(entry.m_last_vals.size())) { + if (ival >= std::ssize(entry.m_last_vals)) { entry.m_last_vals.resize(ival+1); } entry.m_last_vals[ival] = ref; @@ -1082,7 +1083,7 @@ squeryval (const ParmParse::Table& table, if (!(def->empty()) && is_toml_1d_array((*def)[0])) { std::vector toml_vals; read_array_1d(toml_vals, (*def)[0]); - if (ival >= static_cast(toml_vals.size())) { + if (ival >= std::ssize(toml_vals)) { amrex::ErrorStream() << "ParmParse::queryval no value number " << ival << " for "; if ( occurrence == ParmParse::LAST ) { @@ -1100,7 +1101,7 @@ squeryval (const ParmParse::Table& table, // // Does it have ival values? // - if ( ival >= static_cast(def->size()) ) + if (ival >= std::ssize(*def)) { amrex::ErrorStream() << "ParmParse::queryval no value number" << ival << " for "; @@ -1265,7 +1266,7 @@ squeryarr (const ParmParse::Table& table, std::is_same_v); int stop_ix = start_ix + num_val - 1; - if ( static_cast(ref.size()) <= stop_ix ) + if ( std::ssize(ref) <= stop_ix ) { ref.resize(stop_ix + 1); } @@ -2833,7 +2834,7 @@ bool squeryarrWithParser (const ParmParse::Table& table, auto const& entry = table.at(name); - AMREX_ALWAYS_ASSERT(int(vals.size()) == nvals); + AMREX_ALWAYS_ASSERT(std::ssize(vals) == nvals); for (int ival = 0; ival < nvals; ++ival) { bool r = pp_parser(table, parser_prefix, name, vals[ival], ptr[ival], true); if (r) { diff --git a/Src/Base/AMReX_Random.cpp b/Src/Base/AMReX_Random.cpp index 22638c1fa83..71cd002b748 100644 --- a/Src/Base/AMReX_Random.cpp +++ b/Src/Base/AMReX_Random.cpp @@ -5,6 +5,7 @@ #include #include +#include #include #if defined(__GNUC__) && !defined(__clang__) @@ -206,7 +207,7 @@ UniqueRandomSubset (Vector &uSet, int setSize, int poolSize, } std::set copySet; uSet.clear(); - while(static_cast(copySet.size()) < setSize) { + while(std::ssize(copySet) < setSize) { int r = static_cast(Random_int(poolSize)); if(!copySet.contains(r)) { copySet.insert(r); diff --git a/Src/Base/AMReX_TinyProfiler.cpp b/Src/Base/AMReX_TinyProfiler.cpp index 9defd15329d..175224c44e4 100644 --- a/Src/Base/AMReX_TinyProfiler.cpp +++ b/Src/Base/AMReX_TinyProfiler.cpp @@ -32,8 +32,9 @@ #include #include -#include #include +#include +#include #include namespace amrex { @@ -174,7 +175,7 @@ TinyProfiler::stop () const double t = amrex::second(); - AMREX_ALWAYS_ASSERT_WITH_MESSAGE(static_cast(ttstack.size()) == global_depth, + AMREX_ALWAYS_ASSERT_WITH_MESSAGE(std::ssize(ttstack) == global_depth, "TinyProfiler sections must be nested with respect to each other"); #ifdef AMREX_USE_OMP AMREX_ALWAYS_ASSERT_WITH_MESSAGE(in_parallel_region == omp_in_parallel(), diff --git a/Src/Base/AMReX_VisMF.H b/Src/Base/AMReX_VisMF.H index b48fd1e2669..b6a3b272401 100644 --- a/Src/Base/AMReX_VisMF.H +++ b/Src/Base/AMReX_VisMF.H @@ -13,6 +13,7 @@ #include #include +#include #include #include #include @@ -405,7 +406,7 @@ Write (const FabArray& fa, const std::string& name) procsWithData.insert(i); } const int nOutFiles = VisMF::GetNOutFiles(); - if (static_cast(procsWithData.size()) < nOutFiles) { + if (std::ssize(procsWithData) < nOutFiles) { useSparseFPP = true; for (auto i : procsWithData) { procsWithDataVector.push_back(i); diff --git a/Src/Base/AMReX_VisMF.cpp b/Src/Base/AMReX_VisMF.cpp index ea494338bd6..8951d615963 100644 --- a/Src/Base/AMReX_VisMF.cpp +++ b/Src/Base/AMReX_VisMF.cpp @@ -8,6 +8,7 @@ #include #include +#include #include #include #include @@ -1025,7 +1026,7 @@ VisMF::Write (const FabArray& mf, for(int i : pmap) { procsWithData.insert(i); } - if(allowSparseWrites && (static_cast(procsWithData.size()) < nOutFiles)) { + if(allowSparseWrites && (std::ssize(procsWithData) < nOutFiles)) { useSparseFPP = true; // amrex::Print() << "SSSSSSSS: in VisMF::Write: useSparseFPP for: " << mf_name << '\n'; for (auto const& x : procsWithData) { @@ -1823,7 +1824,7 @@ VisMF::Read (FabArray &mf, afPtr, hdr.m_writtenRD); } else { auto nbytes = fab.nBytes(); - AMREX_ASSERT(bytesToRead > currentOffset && nbytes <= std::size_t(bytesToRead - currentOffset)); + AMREX_ASSERT(bytesToRead > currentOffset && std::cmp_less_equal(nbytes, (bytesToRead - currentOffset))); std::memcpy(fabdata, afPtr, nbytes); } currentOffset += readDataItems * hdr.m_writtenRD.numBytes(); @@ -2042,7 +2043,7 @@ VisMF::Read (FabArray &mf, std::vector recReads(nReqs, -1); while(nReqs > 0) { rmess = ParallelDescriptor::Recv(recReads, ioProcNum, readTag); - for(int ir(0); ir < static_cast(rmess.count()); ++ir) { + for(std::size_t ir = 0; ir < rmess.count(); ++ir) { int mfIndex(recReads[ir]); VisMF::readFAB(mf,mfIndex, mf_name, hdr); } @@ -2497,7 +2498,7 @@ VisMF::AsyncWriteDoit (const FabArray& mf, const std::string& mf_name { int k = -1; do { - if (lidx < gidx[rank].size()) { + if (lidx < std::ssize(gidx[rank])) { k = gidx[rank][lidx]; ++lidx; } else { diff --git a/Src/Base/AMReX_parmparse_fi.cpp b/Src/Base/AMReX_parmparse_fi.cpp index 218dda63827..bd9eb02499e 100644 --- a/Src/Base/AMReX_parmparse_fi.cpp +++ b/Src/Base/AMReX_parmparse_fi.cpp @@ -5,6 +5,7 @@ #include #include +#include using namespace amrex; @@ -80,7 +81,7 @@ extern "C" { std::vector b; pp->getarr(name, b); - BL_ASSERT(n == static_cast(b.size())); + BL_ASSERT(n == std::ssize(b)); for (int i = 0; i < n; ++i) { sv[i] = static_cast(b[i].size()) + 1; v[i] = new char[sv[i]]; diff --git a/Src/Extern/HDF5/AMReX_ParticleHDF5.H b/Src/Extern/HDF5/AMReX_ParticleHDF5.H index b9edfd97e96..55b8a210a94 100644 --- a/Src/Extern/HDF5/AMReX_ParticleHDF5.H +++ b/Src/Extern/HDF5/AMReX_ParticleHDF5.H @@ -5,6 +5,8 @@ #include +#include + #ifdef AMREX_USE_HDF5 #include "hdf5.h" @@ -150,8 +152,8 @@ ParticleContainer_impl(real_comp_names.size()) == NStructReal + NumRealComps() - first_rcomp); - AMREX_ALWAYS_ASSERT(static_cast(int_comp_names.size()) == NStructInt + NumIntComps() ); + AMREX_ALWAYS_ASSERT(std::ssize(real_comp_names) == NStructReal + NumRealComps() - first_rcomp); + AMREX_ALWAYS_ASSERT(std::ssize(int_comp_names) == NStructInt + NumIntComps() ); Vector write_real_comp; for (int i = first_rcomp; i < NStructReal + NumRealComps(); ++i) { write_real_comp.push_back(1); } @@ -179,7 +181,7 @@ ParticleContainer_impl(real_comp_names.size()) == NStructReal + NumRealComps() - first_rcomp); + AMREX_ALWAYS_ASSERT(std::ssize(real_comp_names) == NStructReal + NumRealComps() - first_rcomp); Vector write_real_comp; for (int i = first_rcomp; i < NStructReal + NumRealComps(); ++i) write_real_comp.push_back(1); @@ -215,8 +217,8 @@ ParticleContainer_impl(write_real_comp.size()) == NStructReal + NumRealComps() - first_rcomp); - AMREX_ALWAYS_ASSERT(static_cast(write_int_comp.size()) == NStructInt + NumIntComps() ); + AMREX_ALWAYS_ASSERT(std::ssize(write_real_comp) == NStructReal + NumRealComps() - first_rcomp); + AMREX_ALWAYS_ASSERT(std::ssize(write_int_comp) == NStructInt + NumIntComps() ); Vector real_comp_names; for (int i = first_rcomp; i < NStructReal + NumRealComps(); ++i ) @@ -305,8 +307,8 @@ ParticleContainer_impl(real_comp_names.size()) == NStructReal + NumRealComps() - first_rcomp); - AMREX_ALWAYS_ASSERT(static_cast(int_comp_names.size()) == NStructInt + NumIntComps() ); + AMREX_ALWAYS_ASSERT(std::ssize(real_comp_names) == NStructReal + NumRealComps() - first_rcomp); + AMREX_ALWAYS_ASSERT(std::ssize(int_comp_names) == NStructInt + NumIntComps() ); Vector write_real_comp; for (int i = first_rcomp; i < NStructReal + NumRealComps(); ++i) { write_real_comp.push_back(1); } @@ -331,7 +333,7 @@ ParticleContainer_impl(real_comp_names.size()) == NStructReal + NumRealComps() - first_rcomp); + AMREX_ALWAYS_ASSERT(std::ssize(real_comp_names) == NStructReal + NumRealComps() - first_rcomp); Vector write_real_comp; for (int i = first_rcomp; i < NStructReal + NumRealComps(); ++i) { write_real_comp.push_back(1); } @@ -364,8 +366,8 @@ ParticleContainer_impl(write_real_comp.size()) == NStructReal + NumRealComps() - first_rcomp); - AMREX_ALWAYS_ASSERT(static_cast(write_int_comp.size()) == NStructInt + NumIntComps() ); + AMREX_ALWAYS_ASSERT(std::ssize(write_real_comp) == NStructReal + NumRealComps() - first_rcomp); + AMREX_ALWAYS_ASSERT(std::ssize(write_int_comp) == NStructInt + NumIntComps() ); Vector real_comp_names; for (int i = first_rcomp; i < NStructReal + NumRealComps(); ++i ) @@ -448,7 +450,7 @@ ParticleContainer_impl(write_real_comp.size()); ++i ) { + for (int i = 0; i < std::ssize(write_real_comp); ++i ) { if (write_real_comp[i]) { ++real_comp_count; } } @@ -1354,7 +1356,7 @@ ParticleContainer_impl(grids_to_read.size()); ++igrid) { + for(int igrid = 0; igrid < std::ssize(grids_to_read); ++igrid) { const int grid = grids_to_read[igrid]; if (how == "single") { @@ -1402,7 +1404,7 @@ ParticleContainer_impl 0); - AMREX_ASSERT(lev < int(m_particles.size())); + AMREX_ASSERT(lev < std::ssize(m_particles)); hid_t int_dspace, int_fspace, real_dspace, real_fspace; @@ -1552,7 +1554,7 @@ ParticleContainer_impl(host_particles.size()); ++host_lev) + for (int host_lev = 0; host_lev < std::ssize(host_particles); ++host_lev) { for (auto& kv : host_particles[host_lev]) { auto grid = kv.first.first; diff --git a/Src/Extern/HDF5/AMReX_WriteBinaryParticleDataHDF5.H b/Src/Extern/HDF5/AMReX_WriteBinaryParticleDataHDF5.H index eee085f812f..0dde1dd23bc 100644 --- a/Src/Extern/HDF5/AMReX_WriteBinaryParticleDataHDF5.H +++ b/Src/Extern/HDF5/AMReX_WriteBinaryParticleDataHDF5.H @@ -1,6 +1,8 @@ #ifndef AMREX_WRITE_BINARY_PARTICLE_DATA_HDF5_H #define AMREX_WRITE_BINARY_PARTICLE_DATA_HDF5_H +#include + /** * \file AMReX_WriteBinaryParticleDataHDF5.H * @@ -203,7 +205,7 @@ void WriteHDF5ParticleDataSync (PC const& pc, { int nrc = PC::ParticleType::is_soa_particle ? pc.NumRealComps() + NStructReal - AMREX_SPACEDIM : pc.NumRealComps() + NStructReal; - AMREX_ALWAYS_ASSERT(static_cast(real_comp_names.size()) == nrc); + AMREX_ALWAYS_ASSERT(std::ssize(real_comp_names) == nrc); } AMREX_ALWAYS_ASSERT( int_comp_names.size() == pc.NumIntComps() + NStructInt); @@ -262,7 +264,7 @@ void WriteHDF5ParticleDataSync (PC const& pc, // evaluate f for every particle to determine which ones to output Vector, typename PC::IntVector > > particle_io_flags(pc.GetParticles().size()); - for (int lev = 0; lev < pc.GetParticles().size(); lev++) + for (int lev = 0; lev < std::ssize(pc.GetParticles()); lev++) { const auto& pmap = pc.GetParticles(lev); for (const auto& kv : pmap) @@ -339,7 +341,7 @@ void WriteHDF5ParticleDataSync (PC const& pc, CreateWriteHDF5AttrString(fid, "version_name", versionName.c_str()); int num_output_real = 0; - for (int i = 0; i < static_cast(write_real_comp.size()); ++i) { + for (int i = 0; i < std::ssize(write_real_comp); ++i) { if (write_real_comp[i]) { ++num_output_real; } } @@ -364,7 +366,7 @@ void WriteHDF5ParticleDataSync (PC const& pc, // Real component names int real_comp_count = AMREX_SPACEDIM; // position values - for (int i = 0; i < static_cast(write_real_comp.size()); ++i ) { + for (int i = 0; i < std::ssize(write_real_comp); ++i ) { if (write_real_comp[i]) { /* HdrFile << real_comp_names[i] << '\n'; */ snprintf(comp_name, sizeof comp_name, "real_component_%d", real_comp_count); diff --git a/Src/LinearSolvers/MLMG/AMReX_MLLinOp.H b/Src/LinearSolvers/MLMG/AMReX_MLLinOp.H index e51c05cefba..3a0804b48c1 100644 --- a/Src/LinearSolvers/MLMG/AMReX_MLLinOp.H +++ b/Src/LinearSolvers/MLMG/AMReX_MLLinOp.H @@ -24,6 +24,7 @@ #include #include +#include #include namespace amrex { @@ -837,7 +838,7 @@ MLLinOpT::defineGrids (const Vector& a_geom, #endif m_num_amr_levels = 0; - for (int amrlev = 0; amrlev < a_geom.size(); amrlev++) { + for (int amrlev = 0; amrlev < std::ssize(a_geom); amrlev++) { if (!a_grids[amrlev].empty()) { m_num_amr_levels++; } @@ -875,7 +876,7 @@ MLLinOpT::defineGrids (const Vector& a_geom, m_geom[amrlev].push_back(a_geom[amrlev]); m_grids[amrlev].push_back(a_grids[amrlev]); m_dmap[amrlev].push_back(a_dmap[amrlev]); - if (amrlev < a_factory.size()) { + if (amrlev < std::ssize(a_factory)) { m_factory[amrlev].emplace_back(a_factory[amrlev]->clone()); } else { m_factory[amrlev].push_back(std::make_unique>()); @@ -1332,7 +1333,7 @@ MLLinOpT::makeAgglomeratedDMap (const Vector& ba, const std::vector< std::vector >& sfc = DistributionMapping::makeSFC(ba[i]); const int nprocs = ParallelContext::NProcsSub(); - AMREX_ASSERT(static_cast(sfc.size()) == nprocs); + AMREX_ASSERT(std::ssize(sfc) == nprocs); Vector pmap(ba[i].size()); for (int iproc = 0; iproc < nprocs; ++iproc) { diff --git a/Src/Particle/AMReX_NeighborParticlesI.H b/Src/Particle/AMReX_NeighborParticlesI.H index 3a9f1a670ae..e07329c4f93 100644 --- a/Src/Particle/AMReX_NeighborParticlesI.H +++ b/Src/Particle/AMReX_NeighborParticlesI.H @@ -1,4 +1,6 @@ +#include + namespace amrex { template @@ -339,7 +341,7 @@ NeighborParticleContainer for (int lev = 0; lev < this->numLevels(); ++lev) { // resize our temporaries in serial - for (int i = 0; i < static_cast(local_neighbors.size()); ++i) { + for (int i = 0; i < std::ssize(local_neighbors); ++i) { const NeighborCommTag& comm_tag = local_neighbors[i]; tmp_remote_map[comm_tag].resize(num_threads); remote_map[comm_tag]; @@ -376,7 +378,7 @@ NeighborParticleContainer getNeighborTags(tags, p, m_num_neighbor_cells, src_tag, pti); // Add neighbors to buffers - for (int j = 0; j < static_cast(tags.size()); ++j) { + for (int j = 0; j < std::ssize(tags); ++j) { NeighborCopyTag& tag = tags[j]; PairIndex dst_index(tag.grid, tag.tile); if (tag.grid < 0) { continue; } @@ -1112,7 +1114,7 @@ resizeContainers (int num_levels) { this->reserveData(); this->resizeData(); - if ( static_cast(neighbors.size()) <= num_levels ) + if ( std::ssize(neighbors) <= num_levels ) { neighbors.resize(num_levels); m_neighbor_list.resize(num_levels); diff --git a/Src/Particle/AMReX_ParticleCommunication.H b/Src/Particle/AMReX_ParticleCommunication.H index 58496e389e6..3c21daf9f79 100644 --- a/Src/Particle/AMReX_ParticleCommunication.H +++ b/Src/Particle/AMReX_ParticleCommunication.H @@ -14,6 +14,7 @@ #include #include +#include #include #include #include @@ -27,7 +28,7 @@ struct NeighborUnpackPolicy template void resizeTiles (std::vector& tiles, const std::vector& sizes, std::vector& offsets) const { - for(int i = 0; i < static_cast(sizes.size()); ++i) + for(int i = 0; i < std::ssize(sizes); ++i) { int offset = tiles[i]->numTotalParticles(); int nn = tiles[i]->getNumNeighbors(); @@ -485,12 +486,12 @@ public: if constexpr (!PC::ParticleType::is_soa_particle) { comm_comps_start += AMREX_SPACEDIM + NStructReal; } - for (int i = comm_comps_start; i < real_comp_mask.size(); ++i) { + for (int i = comm_comps_start; i < std::ssize(real_comp_mask); ++i) { if (real_comp_mask[i]) {++num_real_comm_comp;} } int num_int_comm_comp = 0; - for (int i = 2 + NStructInt; i < int_comp_mask.size(); ++i) { + for (int i = 2 + NStructInt; i < std::ssize(int_comp_mask); ++i) { if (int_comp_mask[i]) {++num_int_comm_comp;} } @@ -1025,7 +1026,7 @@ void unpackRemotes (PC& pc, const ParticleCopyPlan& plan, Buffer& rcv_buffer, Un std::vector sizes; std::vector tiles; - for (int i = 0, N = int(plan.m_rcv_box_counts.size()); i < N; ++i) + for (int i = 0; i < std::ssize(plan.m_rcv_box_counts); ++i) { int copy_size = plan.m_rcv_box_counts[i]; int lev = plan.m_rcv_box_levs[i]; @@ -1041,7 +1042,7 @@ void unpackRemotes (PC& pc, const ParticleCopyPlan& plan, Buffer& rcv_buffer, Un Gpu::streamSynchronize(); int uindex = 0; int procindex = 0, rproc = plan.m_rcv_box_pids[0]; - for (int i = 0, N = int(plan.m_rcv_box_counts.size()); i < N; ++i) + for (int i = 0; i < std::ssize(plan.m_rcv_box_counts); ++i) { int lev = plan.m_rcv_box_levs[i]; int gid = plan.m_rcv_box_ids[i]; diff --git a/Src/Particle/AMReX_ParticleCommunication.cpp b/Src/Particle/AMReX_ParticleCommunication.cpp index 898c3f78612..092178d47ac 100644 --- a/Src/Particle/AMReX_ParticleCommunication.cpp +++ b/Src/Particle/AMReX_ParticleCommunication.cpp @@ -2,6 +2,8 @@ #include #include +#include + namespace amrex { void ParticleCopyOp::clear () @@ -24,7 +26,7 @@ void ParticleCopyOp::setNumLevels (int num_levels) void ParticleCopyOp::resize (int gid, int tid, int lev, int size) { - if (lev >= m_boxes.size()) + if (lev >= std::ssize(m_boxes)) { setNumLevels(lev+1); } @@ -406,8 +408,8 @@ void ParticleCopyPlan::doHandShakeOneSided (const ParticleContainerBase& pc, const int MyProc = ParallelContext::MyProcSub(); const int NProcs = ParallelContext::NProcsSub(); - AMREX_ALWAYS_ASSERT(static_cast(Snds.size()) == NProcs); - AMREX_ALWAYS_ASSERT(static_cast(Rcvs.size()) == NProcs); + AMREX_ALWAYS_ASSERT(std::ssize(Snds) == NProcs); + AMREX_ALWAYS_ASSERT(std::ssize(Rcvs) == NProcs); pc.ensureParticleHandshakeWindow(); auto* handshake_buffer = pc.particleHandshakeBuffer(); diff --git a/Src/Particle/AMReX_ParticleContainerI.H b/Src/Particle/AMReX_ParticleContainerI.H index e0eb6c8496c..67646afba61 100644 --- a/Src/Particle/AMReX_ParticleContainerI.H +++ b/Src/Particle/AMReX_ParticleContainerI.H @@ -6,6 +6,7 @@ #include #include #include +#include #include namespace amrex { @@ -110,8 +111,8 @@ ParticleContainer_impl const & rdata_name, std::vector const & idata_name ) { - AMREX_ALWAYS_ASSERT_WITH_MESSAGE(rdata_name.size() == NArrayReal, "rdata_name must be equal to NArrayReal"); - AMREX_ALWAYS_ASSERT_WITH_MESSAGE(idata_name.size() == NArrayInt, "idata_name must be equal to NArrayInt"); + AMREX_ALWAYS_ASSERT_WITH_MESSAGE(std::ssize(rdata_name) == NArrayReal, "rdata_name must be equal to NArrayReal"); + AMREX_ALWAYS_ASSERT_WITH_MESSAGE(std::ssize(idata_name) == NArrayInt, "idata_name must be equal to NArrayInt"); // ensure names for components are unique std::set const unique_r_names(rdata_name.begin(), rdata_name.end()); @@ -256,7 +257,7 @@ ParticleContainer_impl 0 && isects.size() > 1) { + if (nGrow > 0 && std::ssize(isects) > 1) { for (auto & isect : isects) { Box bx = ba.getCellCenteredBox(isect.first); for (int dir = 0; dir < AMREX_SPACEDIM; ++dir) { @@ -495,7 +496,7 @@ template ParticleContainer_impl::NumberOfParticlesInGrid (int lev, bool only_valid, bool only_local) const { - AMREX_ASSERT(lev >= 0 && lev < int(m_particles.size())); + AMREX_ASSERT(lev >= 0 && lev < std::ssize(m_particles)); LayoutData np_per_grid_local(ParticleBoxArray(lev), ParticleDistributionMap(lev)); @@ -552,7 +553,7 @@ Long ParticleContainer_impl= int(m_particles.size())) { return nparticles; } + if (level < 0 || level >= std::ssize(m_particles)) { return nparticles; } if (only_valid) { ReduceOps reduce_op; @@ -592,7 +593,7 @@ template && (sizeof(I) >= si void ParticleContainer_impl::CapacityOfParticlesInGrid (LayoutData& mem, int lev) const { - AMREX_ASSERT(lev >= 0 && lev < int(m_particles.size())); + AMREX_ASSERT(lev >= 0 && lev < std::ssize(m_particles)); AMREX_ASSERT(BoxArray::SameRefs(mem.boxArray(), ParticleBoxArray(lev)) && mem.DistributionMap() == ParticleDistributionMap(lev)); @@ -723,7 +724,7 @@ ParticleContainer_impl= 0 && lev < int(m_particles.size())); + AMREX_ASSERT(lev >= 0 && lev < std::ssize(m_particles)); AMREX_ASSERT(numParticlesOutOfRange(*this, 0) == 0); const auto& geom = Geom(lev); @@ -757,7 +758,7 @@ void ParticleContainer_impl::RemoveParticlesAtLevel (int level) { BL_PROFILE("ParticleContainer::RemoveParticlesAtLevel()"); - if (level >= int(this->m_particles.size())) { return; } + if (level >= std::ssize(this->m_particles)) { return; } if (!this->m_particles[level].empty()) { @@ -771,7 +772,7 @@ void ParticleContainer_impl::RemoveParticlesNotAtFinestLevel () { BL_PROFILE("ParticleContainer::RemoveParticlesNotAtFinestLevel()"); - AMREX_ASSERT(this->finestLevel()+1 == int(this->m_particles.size())); + AMREX_ASSERT(this->finestLevel()+1 == std::ssize(this->m_particles)); Long cnt = 0; @@ -852,7 +853,7 @@ ParticleContainer_impl 0); AMREX_ASSERT(virts.empty()); - if (level >= static_cast(m_particles.size())) { + if (level >= std::ssize(m_particles)) { return; } @@ -1097,7 +1098,7 @@ ParticleContainer_impl= static_cast(m_particles.size())) { + if (level >= std::ssize(m_particles)) { return; } @@ -1129,7 +1130,7 @@ clearParticles () { BL_PROFILE("ParticleContainer::clearParticles()"); - for (int lev = 0; lev < static_cast(m_particles.size()); ++lev) + for (int lev = 0; lev < std::ssize(m_particles); ++lev) { for (auto& kv : m_particles[lev]) { kv.second.resize(0); } particle_detail::clearEmptyEntries(m_particles[lev]); @@ -1447,7 +1448,7 @@ ParticleContainer_implfinestLevel(); while (!m_gdb->LevelDefined(theEffectiveFinestLevel)) { theEffectiveFinestLevel--; } - if (int(m_particles.size()) < theEffectiveFinestLevel+1) { + if (std::ssize(m_particles) < theEffectiveFinestLevel+1) { if (Verbose()) { amrex::Print() << "ParticleContainer::Redistribute() resizing containers from " << m_particles.size() << " to " @@ -1690,12 +1691,12 @@ ParticleContainer_impl theEffectiveFinestLevel+1) { + if (std::ssize(m_particles) > theEffectiveFinestLevel+1) { if (m_verbose > 0) { amrex::Print() << "ParticleContainer::Redistribute() resizing m_particles from " << m_particles.size() << " to " << theEffectiveFinestLevel+1 << '\n'; } - AMREX_ASSERT(int(m_particles.size()) >= 2); + AMREX_ASSERT(std::ssize(m_particles) >= 2); m_particles.resize(theEffectiveFinestLevel + 1); m_dummy_mf.resize(theEffectiveFinestLevel + 1); @@ -1764,7 +1765,7 @@ ParticleContainer_impl 0) { - for (int i = 0, N = int(plan.m_rcv_box_counts.size()); i < N; ++i) { + for (int i = 0; i < std::ssize(plan.m_rcv_box_counts); ++i) { int copy_size = plan.m_rcv_box_counts[i]; int lev = plan.m_rcv_box_levs[i]; int gid = plan.m_rcv_box_ids[i]; @@ -1810,7 +1811,7 @@ ParticleContainer_impl #include +#include + namespace amrex { template 0); - AMREX_ASSERT(lev < int(m_particles.size())); + AMREX_ASSERT(lev < std::ssize(m_particles)); // First read in the integer data in binary. We do not store // the m_lev and m_grid data on disk. We can easily recreate @@ -1080,7 +1082,7 @@ ParticleContainer_impl(host_particles.size()); ++host_lev) + for (int host_lev = 0; host_lev < std::ssize(host_particles); ++host_lev) { for (auto& kv : host_particles[host_lev]) { auto grid = kv.first.first; @@ -1144,7 +1146,7 @@ ParticleContainer_impl +#include +#include + namespace amrex { /* @@ -321,7 +324,7 @@ ParticleContainer_impl(host_particles.size()); ++lev) + for (int lev = 0; lev < std::ssize(host_particles); ++lev) { for (auto& kv : host_particles[lev]) { @@ -338,7 +341,7 @@ ParticleContainer_impl (long unsigned int) NArrayReal) { + if (std::ssize(host_real_attribs[lev][std::make_pair(grid, tile)]) > NArrayReal) { for (int i = 0; i < NArrayReal; ++i) { Gpu::copyAsync(Gpu::hostToDevice, host_real_attribs[lev][std::make_pair(grid,tile)][i].begin(), @@ -379,7 +382,8 @@ ParticleContainer_impl (long unsigned int) (extradata - NStructReal)) { + if (std::ssize(host_real_attribs[pld.m_lev][std::make_pair(pld.m_grid, pld.m_tile)]) > + extradata - NStructReal) { for (int n = NStructReal; n < extradata; n++) { Real rdata = nreals[n-NStructReal].back(); @@ -398,7 +402,7 @@ ParticleContainer_impl(host_particles.size()); ++lev) + for (int lev = 0; lev < std::ssize(host_particles); ++lev) { for (auto& kv : host_particles[lev]) { @@ -574,9 +578,9 @@ InitFromBinaryFile (const std::string& file, readers.insert(n); } - while (static_cast(readers.size()) < NReaders); + while (std::ssize(readers) < NReaders); - AMREX_ASSERT(static_cast(readers.size()) == rprocs.size()); + AMREX_ASSERT(std::ssize(readers) == rprocs.size()); int i = 0; @@ -598,7 +602,7 @@ InitFromBinaryFile (const std::string& file, // readers.insert(rprocs.begin(), rprocs.end()); - AMREX_ASSERT(static_cast(readers.size()) == rprocs.size()); + AMREX_ASSERT(std::ssize(readers) == rprocs.size()); AMREX_ASSERT(rprocs.size() == NReaders); } @@ -845,7 +849,7 @@ InitFromBinaryFile (const std::string& file, how_many_read += NRead; } - for (int host_lev = 0; host_lev < static_cast(host_particles.size()); ++host_lev) + for (int host_lev = 0; host_lev < std::ssize(host_particles); ++host_lev) { for (auto& kv : host_particles[host_lev]) { auto grid = kv.first.first; @@ -870,7 +874,7 @@ InitFromBinaryFile (const std::string& file, // we don't keep trying to redistribute particles that have // already been redistributed correctly. // - for (int lev = 0; lev < m_particles.size(); lev++) + for (int lev = 0; lev < std::ssize(m_particles); lev++) { auto& pmap = m_particles[lev]; auto& tmp_pmap = tmp_particles[lev]; @@ -1142,7 +1146,7 @@ InitRandom (Long icount, } } - for (int host_lev = 0; host_lev < static_cast(host_particles.size()); ++host_lev) + for (int host_lev = 0; host_lev < std::ssize(host_particles); ++host_lev) { for (auto& kv : host_particles[host_lev]) { auto grid = kv.first.first; @@ -1295,7 +1299,7 @@ InitRandom (Long icount, } } - for (int host_lev = 0; host_lev < static_cast(host_particles.size()); ++host_lev) + for (int host_lev = 0; host_lev < std::ssize(host_particles); ++host_lev) { for (auto& kv : host_particles[host_lev]) { auto grid = kv.first.first; @@ -1387,7 +1391,7 @@ ParticleContainer_implfinestLevel()+1); - for (int lev = 0; lev < m_particles.size(); lev++) + for (int lev = 0; lev < std::ssize(m_particles); lev++) { AMREX_ASSERT(m_particles[lev].empty()); } @@ -1561,7 +1565,7 @@ InitNRandomPerCell (int n_per_cell, const ParticleInitData& pdata) resizeData(); - for (int lev = 0; lev < m_particles.size(); lev++) { + for (int lev = 0; lev < std::ssize(m_particles); lev++) { AMREX_ASSERT(m_particles[lev].empty()); } @@ -1639,7 +1643,7 @@ InitNRandomPerCell (int n_per_cell, const ParticleInitData& pdata) } } - for (int host_lev = 0; host_lev < static_cast(host_particles.size()); ++host_lev) + for (int host_lev = 0; host_lev < std::ssize(host_particles); ++host_lev) { for (auto& kv : host_particles[host_lev]) { auto gid = kv.first.first; diff --git a/Src/Particle/AMReX_ParticleReduce.H b/Src/Particle/AMReX_ParticleReduce.H index c8bacdf0b55..91ca686589f 100644 --- a/Src/Particle/AMReX_ParticleReduce.H +++ b/Src/Particle/AMReX_ParticleReduce.H @@ -11,6 +11,7 @@ #include #include +#include #include #include @@ -234,7 +235,7 @@ ReduceSum (PC const& pc, int lev_min, int lev_max, F const& f) #ifdef AMREX_USE_OMP #pragma omp parallel for if (!system::regtest_reduction) reduction(+:sm) #endif - for (int pmap_it = 0; pmap_it < static_cast(ptile_ptrs.size()); ++pmap_it) + for (int pmap_it = 0; pmap_it < std::ssize(ptile_ptrs); ++pmap_it) { const auto& tile = plev.at(grid_tile_ids[pmap_it]); const auto np = tile.numParticles(); @@ -438,7 +439,7 @@ ReduceMax (PC const& pc, int lev_min, int lev_max, F const& f) #ifdef AMREX_USE_OMP #pragma omp parallel for if (!system::regtest_reduction) reduction(max:r) #endif - for (int pmap_it = 0; pmap_it < static_cast(ptile_ptrs.size()); ++pmap_it) + for (int pmap_it = 0; pmap_it < std::ssize(ptile_ptrs); ++pmap_it) { const auto& tile = plev.at(grid_tile_ids[pmap_it]); const auto np = tile.numParticles(); @@ -641,7 +642,7 @@ ReduceMin (PC const& pc, int lev_min, int lev_max, F const& f) #ifdef AMREX_USE_OMP #pragma omp parallel for if (!system::regtest_reduction) reduction(min:r) #endif - for (int pmap_it = 0; pmap_it < static_cast(ptile_ptrs.size()); ++pmap_it) + for (int pmap_it = 0; pmap_it < std::ssize(ptile_ptrs); ++pmap_it) { const auto& tile = plev.at(grid_tile_ids[pmap_it]); const auto np = tile.numParticles(); @@ -839,7 +840,7 @@ ReduceLogicalAnd (PC const& pc, int lev_min, int lev_max, F const& f) #ifdef AMREX_USE_OMP #pragma omp parallel for if (!system::regtest_reduction) reduction(&&:r) #endif - for (int pmap_it = 0; pmap_it < static_cast(ptile_ptrs.size()); ++pmap_it) + for (int pmap_it = 0; pmap_it < std::ssize(ptile_ptrs); ++pmap_it) { const auto& tile = plev.at(grid_tile_ids[pmap_it]); const auto np = tile.numParticles(); @@ -1038,7 +1039,7 @@ ReduceLogicalOr (PC const& pc, int lev_min, int lev_max, F const& f) #ifdef AMREX_USE_OMP #pragma omp parallel for if (!system::regtest_reduction) reduction(||:r) #endif - for (int pmap_it = 0; pmap_it < static_cast(ptile_ptrs.size()); ++pmap_it) + for (int pmap_it = 0; pmap_it < std::ssize(ptile_ptrs); ++pmap_it) { const auto& tile = plev.at(grid_tile_ids[pmap_it]); const auto np = tile.numParticles(); @@ -1278,7 +1279,7 @@ ParticleReduce (PC const& pc, int lev_min, int lev_max, F const& f, ReduceOps& r #if !defined(AMREX_USE_GPU) && defined(AMREX_USE_OMP) #pragma omp parallel for #endif - for (int pmap_it = 0; pmap_it < static_cast(ptile_ptrs.size()); ++pmap_it) + for (int pmap_it = 0; pmap_it < std::ssize(ptile_ptrs); ++pmap_it) { const auto& tile = plev.at(grid_tile_ids[pmap_it]); const auto np = tile.numParticles(); diff --git a/Tests/ParmParse/main.cpp b/Tests/ParmParse/main.cpp index 8bd54e37c44..3f7b7db4be6 100644 --- a/Tests/ParmParse/main.cpp +++ b/Tests/ParmParse/main.cpp @@ -320,7 +320,7 @@ int main(int argc, char* argv[]) std::vector sv{"string a", " string b", " string c ", "string-d"}; pp.addarr("string_vector", sv); - for (int i = 0; i < int(sv.size()); ++i) { + for (int i = 0; i < std::ssize(sv); ++i) { pp.get("string_vector", s, i); AMREX_ALWAYS_ASSERT(s == sv[i]); }