#include <iostream>

class uncopyable {
protected:
	uncopyable() { }
private:
	uncopyable(const uncopyable& other);
	uncopyable& operator=(const uncopyable &other);
};

class myclass : private uncopyable {
private: int _x;
public: myclass(int x) : _x(x) { }
};

int main() {
	myclass obj1(123);
	myclass obj2(obj1); // compile-time error
	return 0;
}
