function ArrayFill(value, start, end) {
  CHECK_OBJECT_COERCIBLE(this, "Array.prototype.fill");

  var array = TO_OBJECT(this);
  var length = TO_LENGTH(array.length);

  return InnerArrayFill(value, start, end, array, length);
}
function ArrayFill(value, start, end) {
  CHECK_OBJECT_COERCIBLE(this, "Array.prototype.fill");

  var array = TO_OBJECT(this);
  var length = TO_LENGTH(array.length);

  return InnerArrayFill(value, start, end, array, length);
}
function ArrayFill ( value , start , end ) { CHECK_OBJECT_COERCIBLE ( this , "Array.prototype.fill" ) ; var array = TO_OBJECT ( this ) ; var length = TO_LENGTH ( array . length ) ; return InnerArrayFill ( value , start , end , array , length ) ; }
ES6, draft 04-05-14, section 22.1.3.6
ES6 draft 04 - 05 - 14 section 22 . 1 . 3 . 6