From 9.2.13 of the ES6 Spec Draft:
a. NOTE Arrow functions never have an arguments objects.
In fact, we should be capturing arguments from the first containing function expression and error if there is none. The correct emit for something like
function f() {
return () => arguments;
}
would be the following:
function f() {
var _arguments = arguments;
return () => _arguments;
}