Тип элемента в первом range-based for (правильное название того, что Вы назвали for each) у Вас указан как int, тогда как фактически там int[2]. Компилятор не может неявно привести массив intов к intу, поэтому выдаёт ошибку. Используйте тип const auto&, чтобы не копировать подмассивы при каждом проходе. Также стоит убедиться, что Вы компилируете в нужной версии C++ (для g++ это аргумент, например, -std=c++20).