Issue with calling this.randomize function

From section 8.7 of the LRM:

If a class does not provide an explicit user-defined new method, an implicit new method shall be provided automatically. The new method of a derived class shall first call its base class constructor [super.new() as described in 8.15]. After the base class constructor call (if any) has completed, each property defined in the class shall be initialized to its explicit default value or its uninitialized value if no default is provided. After the properties are initialized, the remaining code in a user-defined constructor shall be evaluated. The default constructor has no additional effect after the property initialization. The value of a property prior to its initialization shall be undefined.

Since no new() method is provided, the base class constructor (from “A”) will be called (randomize call), and then all variables defined in “B” will be initialized to their default or uninitialized values (‘x’ set to 0).

Three of the four tools on EDA playground follow the LRM. One does not, which is the one you are using. You need to contact the tool vendor for additional support regarding this discrepancy.