/* Test multiple inheritance and assertions */ class Aclass { public const name = "Aclass"; public var a = 1; public proc Describe() { say( "a = ", a, "\n" ); } } class Bclass { public const name = "Bclass"; public var b = 2; public proc Describe() { say( "b = ", b, "\n" ); } } class ABclass(Aclass,Bclass) { public const name = "ABclass"; } ABclass ab {} proc main() { "ab.a = ", ab.a, "\n"; "ab.b = ", ab.b, "\n"; ab.Describe(); // Later classes in mult. inher. override earlier ones "Aclass = ", Aclass.name, "\n"; "Bclass = ", Bclass.name, "\n"; "ABclass = ", ABclass.name, "\n"; "ABclass.parent = ", ABclass.parent.name, "\n"; // Neither of these assertions should fire assert ab ?= Aclass; assert ab ?= ABclass; }