
    #include <iostream>
    
    template <typename T>
    struct A
    {
        friend void f(T x)
        {
            std::cout << "A\n";
        }
        operator int(){return 1;}
    };
    
    int main()
    {
        //f(new A<void*>());
        //f(A());
        f(A<int>());

    }

