// Test new handling. class withInit { int i = 2; string name = "Doug"; double val; to init(string name = "Mike", double val=0.123, double i=9) { self.name = name; self.val = val; self.i = i; } } class extraInit extends withInit { int x; to init(int x) { parent.init("extended", 0.666, 666); } to crash() { punt("bye now"); } to setUpCrash(string s) { print("setting up crash"); crash(); } } withInit a = (); print(a); withInit b = ("Harry", i@19); print(b); class noInit { int i = 2; string name = "Doug"; double val; } noInit c = (); print(c); extraInit x = (3); print(x); try { x.setUpCrash("bugga!");} catch (error e) print("caught " + e.asString());