std::reverse_iterator<int>::base
の戻り値がint型だって保証されてますか。