Merge branch 'master' of github.com:babel/babel

# Conflicts:
#	src/babel/transformation/transformers/es6/parameters.rest.js
This commit is contained in:
Sebastian McKenzie 2015-03-01 10:04:52 +11:00
commit ff5a149cec
3 changed files with 38 additions and 6 deletions

View File

@ -39,16 +39,14 @@ var memberExpressionOptimisationVisitor = {
}
};
function optimizeMemberExpression(node, parent, offset) {
function optimizeMemberExpression(parent, offset) {
var newExpr;
var prop = parent.property;
if (t.isLiteral(prop)) {
node.name = "arguments";
prop.value += offset;
prop.raw = String(prop.value);
} else { // // UnaryExpression, BinaryExpression
node.name = "arguments";
newExpr = t.binaryExpression("+", prop, t.literal(offset));
parent.property = newExpr;
}
@ -87,6 +85,7 @@ exports.Function = function (node, parent, scope) {
candidates: [],
method: node,
name: rest.name,
argsId: argsId
};
scope.traverse(node, memberExpressionOptimisationVisitor, state);

View File

@ -2,3 +2,18 @@ var concat = (...arrs) => {
var x = arrs[0];
var y = arrs[1];
};
var somefun = function () {
let get2ndArg = (a, b, ...args1) => {
var _b = args1[0];
let somef = (x, y, z, ...args2) => {
var _a = args2[0];
};
let somefg = (c, d, e, f, ...args3) => {
var _a = args3[0];
};
var _c = arguments[1];
var _d = args1[1];
};
let get1stArg = (...args) => args[0];
}

View File

@ -1,8 +1,26 @@
"use strict";
var _arguments = arguments;
var concat = function () {
var x = _arguments[0];
var y = _arguments[1];
var x = arguments[0];
var y = arguments[1];
};
var somefun = function somefun() {
var _arguments = arguments;
var get2ndArg = function (a, b) {
var _b = arguments[2];
var somef = function (x, y, z) {
var _a = arguments[3];
};
var somefg = function (c, d, e, f) {
var _a = arguments[4];
};
var _c = _arguments[1];
var _d = arguments[3];
};
var get1stArg = function () {
return arguments[0];
};
};