Розклад масиву у вказівник в range-for: чому так відбувається згідно з clang-tidy?

Розклад масиву у вказівник в range-for: чому так відбувається згідно з clang-tidy?

8 Березня 2024 в 15:56 42

У версіях 13.x та 16.x clang-tidy виявляє порушення cppcoreguidelines-pro-bounds-array-to-pointer-decay у дивно специфічній ситуації: при ітерації по масиву, до якого звертаються через вказівник. Чому це відбувається? Як range-for може працювати після того, як масив перетворився на вказівник?

Чому лише

спричиняє це попередження?