#include <iostream>
using std::cout;

class A { 
public:
    void copy() const {
        cout << "copy's const version\n";
    }   
    void copy() {
        cout << "copy's non-const version\n";
    }   
};

A const fun1() { return A(); }
A fun2() { return A(); }

int main() {
    fun1().copy();
    fun2().copy();
}