#include <iostream>
using namespace std;

template <class T>
auto func(T) -> void
{
    cout << "::f" << endl;
}

namespace my_ns {
    struct my_struct {};

    auto func(my_struct) -> void
    {
        cout << "my_ns::func" << endl;
    }

    auto another_func() -> void
    {
        // won't compile without `using ::func;`
        func(123);
    }
}

auto main() -> int {}
