From c0235b862db90e8678095d866c8e478c57786a6f Mon Sep 17 00:00:00 2001 From: Anton Alkin Date: Mon, 13 Dec 2021 10:17:56 +0100 Subject: [PATCH] DPL Analysis: add an exception on invalid index access --- Framework/Core/include/Framework/ASoA.h | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Framework/Core/include/Framework/ASoA.h b/Framework/Core/include/Framework/ASoA.h index 402247b41cff2..336211e81f6cd 100644 --- a/Framework/Core/include/Framework/ASoA.h +++ b/Framework/Core/include/Framework/ASoA.h @@ -1606,6 +1606,9 @@ constexpr auto is_binding_compatible_v() auto _Getter_##_as() const \ { \ assert(mBinding != nullptr); \ + if (O2_BUILTIN_UNLIKELY(!has_##_Getter_())) { \ + throw o2::framework::runtime_error_f("Accessing invalid index for %s", #_Getter_); \ + } \ return static_cast(mBinding)->rawIteratorAt(*mColumnIterator); \ } \ \ @@ -1675,6 +1678,9 @@ constexpr auto is_binding_compatible_v() auto _Getter_##_as() const \ { \ assert(mBinding != nullptr); \ + if (O2_BUILTIN_UNLIKELY(!has_##_Getter_())) { \ + throw o2::framework::runtime_error_f("Accessing invalid index for %s", #_Getter_); \ + } \ return static_cast(mBinding)->rawIteratorAt(*mColumnIterator); \ } \ \