class base {
    method() { return 1; }
    *gen() { return 2; }
    static sMethod() { return 3; }
    get answer() { return 42; }
}

// Having a default constructor should work, and also not make you lose
// everything for no good reason

assertEq(Object.getPrototypeOf(new base()), base.prototype);
assertEq(new base().method(), 1);
assertEq(new base().gen().next().value, 2);
assertEq(base.sMethod(), 3);
assertEq(new base().answer, 42);

if (typeof reportCompare === 'function')
    reportCompare(0,0,"OK");
