/* Make sure that you can't steal methods from one class and put them
* in a different class to do evil things.
*/
class Aclass {
var a = 1;
var b = 2;
public var c = proc(x) {a = x;};
public proc print()
{
say("a = ", a, "; b = ", b, "\n");
}
}
class Bclass {
var b = 1;
var a = 2;
public proc c(x) {a = x;}
public proc print()
{
say("a = ", a, "; b = ", b, "\n");
}
}
Aclass a {}
Bclass b {}
proc main()
{
a.c = b.c;
try {
a.c(3);
} catch(e) {
say("Caught exception\n");
}
a.print();
}