class C { a : Int; b : Bool; init(x : Int, y : Bool) : C { { a <- x; b <- y; self; } }; }; --redefinition of class Class C{ main():C { (new C).init(1,true) }; }; --unknown parent Class D inherits Q{ man():C { (new C).init(1,true) }; }; --illegal parent Class E inherits No_class{ main():C { (new C).init(1,true) }; }; --illegal parent Class FS inherits No_class{ main():C { (new C).init(1,true) }; }; --redefinition of basic class Class SELF_TYPE inherits Object{ main():C { (new C).init(1,true) }; }; --redefinition of basic class Class Object{ main():C { (new C).init(1,true) }; }; --redefinition of basic class Class No_class{ main():C { (new C).init(1,true) }; }; --redefinition of basic class Class Int{ main():C { (new C).init(1,true) }; }; --cycle in heirarchy Class F inherits A{ main():C { (new C).init(1,true) }; }; --cycle in heirarchy Class A inherits B{ main():C { (new C).init(1,true) }; }; Class B inherits A{ main():C { (new C).init(1,true) }; };