/in/foo.cc: In function 'll euler_phi(ll)':
/in/foo.cc:59:15: warning: structured bindings only available with '-std=c++17' or '-std=gnu++17' [-Wc++17-extensions]
59 | for (auto [p, cnt] : factors) {
| ^
/in/foo.cc: In function 'void generate_divisors(const std::vector<std::pair<long long int, int> >&, int, ll, std::vector<long long int>&)':
/in/foo.cc:67:15: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::pair<long long int, int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
67 | if (index == factors.size()) {
| ~~~~~~^~~~~~~~~~~~~~~~~
/in/foo.cc: In function 'int main()':
/in/foo.cc:193:22: warning: structured bindings only available with '-std=c++17' or '-std=gnu++17' [-Wc++17-extensions]
193 | auto [p, m_val] = st.top();
| ^