class Base {
constructor() {}
}
class Mid extends Base {
constructor() { super(); }
f() { return new super.constructor(); }
}
class Derived extends Mid {
constructor() { super(); }
}
let d = new Derived();
var df = d.f();
assertEq(df.constructor, Base);
if (typeof reportCompare === 'function')
reportCompare(0,0,"OK");