From 7368eeb07fc402fceb6e2b0a16f71aecf158f9a9 Mon Sep 17 00:00:00 2001 From: Timo Koch <timokoch@uio.no> Date: Thu, 12 Oct 2023 15:41:01 +0200 Subject: [PATCH] [subgrid] Impove error message when buffer size doesn't match --- dumux/io/grid/gridmanager_sub.hh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dumux/io/grid/gridmanager_sub.hh b/dumux/io/grid/gridmanager_sub.hh index 885dc48522..3145aba69f 100644 --- a/dumux/io/grid/gridmanager_sub.hh +++ b/dumux/io/grid/gridmanager_sub.hh @@ -238,8 +238,8 @@ public: std::ifstream mask(maskFileName, std::ios_base::binary); std::vector<char> buffer(std::istreambuf_iterator<char>(mask), std::istreambuf_iterator<char>{}); const auto cells = getParamFromGroup<std::array<int, dim>>(paramGroup, "Grid.Cells"); - if (std::accumulate(cells.begin(), cells.end(), 1, std::multiplies<int>{}) != buffer.size()) - DUNE_THROW(Dune::IOError, "Grid dimensions doesn't match number of cells specified"); + if (const auto c = std::accumulate(cells.begin(), cells.end(), 1, std::multiplies<int>{}); c != buffer.size()) + DUNE_THROW(Dune::IOError, "Grid dimensions doesn't match number of cells specified " << c << ":" << buffer.size()); maybePostProcessBinaryMask_(buffer, cells, paramGroup); -- GitLab