Merge pull request #2138 from Microsoft/functionEmit
Remove optimization of eliding the preamble code for functions without statements.
This commit is contained in:
commit
7b8919f166
|
@ -3088,6 +3088,8 @@ module ts {
|
|||
|
||||
write(tokenToString(node.operatorToken.kind));
|
||||
|
||||
// Check if the right expression is on a different line versus the operator itself. If so,
|
||||
// we'll emit newline.
|
||||
if (!nodeEndIsOnSameLineAsNodeStart(node.operatorToken, node.right)) {
|
||||
increaseIndent();
|
||||
writeLine();
|
||||
|
@ -3940,58 +3942,21 @@ module ts {
|
|||
}
|
||||
|
||||
function emitBlockFunctionBody(node: FunctionLikeDeclaration, body: Block) {
|
||||
// If the body has no statements, and we know there's no code that would cause any
|
||||
// prologue to be emitted, then just do a simple emit if the empty block.
|
||||
if (body.statements.length === 0 && !anyParameterHasBindingPatternOrInitializer(node)) {
|
||||
emitFunctionBodyWithNoStatements(node, body);
|
||||
}
|
||||
else {
|
||||
emitFunctionBodyWithStatements(node, body);
|
||||
}
|
||||
}
|
||||
|
||||
function anyParameterHasBindingPatternOrInitializer(func: FunctionLikeDeclaration) {
|
||||
return forEach(func.parameters, hasBindingPatternOrInitializer);
|
||||
}
|
||||
|
||||
function hasBindingPatternOrInitializer(parameter: ParameterDeclaration) {
|
||||
return parameter.initializer || isBindingPattern(parameter.name);
|
||||
}
|
||||
|
||||
function emitFunctionBodyWithNoStatements(node: FunctionLikeDeclaration, body: Block) {
|
||||
var singleLine = isSingleLineEmptyBlock(node.body);
|
||||
|
||||
write(" {");
|
||||
if (singleLine) {
|
||||
write(" ");
|
||||
}
|
||||
else {
|
||||
increaseIndent();
|
||||
writeLine();
|
||||
}
|
||||
|
||||
emitLeadingCommentsOfPosition(body.statements.end);
|
||||
|
||||
if (!singleLine) {
|
||||
decreaseIndent();
|
||||
}
|
||||
|
||||
emitToken(SyntaxKind.CloseBraceToken, body.statements.end);
|
||||
}
|
||||
|
||||
function emitFunctionBodyWithStatements(node: FunctionLikeDeclaration, body: Block) {
|
||||
write(" {");
|
||||
scopeEmitStart(node);
|
||||
|
||||
var outPos = writer.getTextPos();
|
||||
var initialTextPos = writer.getTextPos();
|
||||
|
||||
increaseIndent();
|
||||
emitDetachedComments(body.statements);
|
||||
|
||||
// Emit all the directive prologues (like "use strict"). These have to come before
|
||||
// any other preamble code we write (like parameter initializers).
|
||||
var startIndex = emitDirectivePrologues(body.statements, /*startWithNewLine*/ true);
|
||||
emitFunctionBodyPreamble(node);
|
||||
decreaseIndent();
|
||||
|
||||
var preambleEmitted = writer.getTextPos() !== outPos;
|
||||
var preambleEmitted = writer.getTextPos() !== initialTextPos;
|
||||
|
||||
if (!preambleEmitted && nodeEndIsOnSameLineAsNodeStart(body, body)) {
|
||||
for (var i = 0, n = body.statements.length; i < n; i++) {
|
||||
|
|
|
@ -10,12 +10,22 @@ var C = (function () {
|
|||
function C() {
|
||||
}
|
||||
Object.defineProperty(C.prototype, "X", {
|
||||
set: function () { },
|
||||
set: function () {
|
||||
var v = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
v[_i - 0] = arguments[_i];
|
||||
}
|
||||
},
|
||||
enumerable: true,
|
||||
configurable: true
|
||||
});
|
||||
Object.defineProperty(C, "X", {
|
||||
set: function () { },
|
||||
set: function () {
|
||||
var v2 = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
v2[_i - 0] = arguments[_i];
|
||||
}
|
||||
},
|
||||
enumerable: true,
|
||||
configurable: true
|
||||
});
|
||||
|
|
|
@ -5,5 +5,10 @@ panic([], 'one', 'two');
|
|||
|
||||
|
||||
//// [arrayLiteralInNonVarArgParameter.js]
|
||||
function panic(val) { }
|
||||
function panic(val) {
|
||||
var opt = [];
|
||||
for (var _i = 1; _i < arguments.length; _i++) {
|
||||
opt[_i - 1] = arguments[_i];
|
||||
}
|
||||
}
|
||||
panic([], 'one', 'two');
|
||||
|
|
|
@ -20,6 +20,11 @@ interface Base2 {
|
|||
var Derived2 = (function () {
|
||||
function Derived2() {
|
||||
}
|
||||
Derived2.prototype.method = function () { };
|
||||
Derived2.prototype.method = function () {
|
||||
var args = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
args[_i - 0] = arguments[_i];
|
||||
}
|
||||
};
|
||||
return Derived2;
|
||||
})();
|
||||
|
|
|
@ -61,6 +61,10 @@ var __extends = this.__extends || function (d, b) {
|
|||
d.prototype = new __();
|
||||
};
|
||||
function foo(x, y) {
|
||||
var z = [];
|
||||
for (var _i = 2; _i < arguments.length; _i++) {
|
||||
z[_i - 2] = arguments[_i];
|
||||
}
|
||||
}
|
||||
var a;
|
||||
var z;
|
||||
|
@ -89,6 +93,10 @@ var C = (function () {
|
|||
this.foo.apply(this, [x, y].concat(z));
|
||||
}
|
||||
C.prototype.foo = function (x, y) {
|
||||
var z = [];
|
||||
for (var _i = 2; _i < arguments.length; _i++) {
|
||||
z[_i - 2] = arguments[_i];
|
||||
}
|
||||
};
|
||||
return C;
|
||||
})();
|
||||
|
|
|
@ -56,6 +56,10 @@ function f3NoError() {
|
|||
var _i = 10; // no error
|
||||
}
|
||||
function f4(_i) {
|
||||
var rest = [];
|
||||
for (var _a = 1; _a < arguments.length; _a++) {
|
||||
rest[_a - 1] = arguments[_a];
|
||||
}
|
||||
}
|
||||
function f4NoError(_i) {
|
||||
}
|
||||
|
|
|
@ -47,6 +47,10 @@ function foo() {
|
|||
var _i = 10; // no error
|
||||
}
|
||||
function f4(_i) {
|
||||
var rest = [];
|
||||
for (var _a = 1; _a < arguments.length; _a++) {
|
||||
rest[_a - 1] = arguments[_a];
|
||||
}
|
||||
}
|
||||
function f4NoError(_i) {
|
||||
}
|
||||
|
|
File diff suppressed because one or more lines are too long
|
@ -2210,8 +2210,8 @@ sourceFile:contextualTyping.ts
|
|||
2 >Emitted(87, 14) Source(146, 14) + SourceIndex(0)
|
||||
3 >Emitted(87, 15) Source(146, 15) + SourceIndex(0)
|
||||
4 >Emitted(87, 16) Source(146, 37) + SourceIndex(0)
|
||||
5 >Emitted(87, 20) Source(146, 40) + SourceIndex(0)
|
||||
6 >Emitted(87, 21) Source(146, 41) + SourceIndex(0)
|
||||
5 >Emitted(87, 20) Source(146, 40) + SourceIndex(0) name (c9t5)
|
||||
6 >Emitted(87, 21) Source(146, 41) + SourceIndex(0) name (c9t5)
|
||||
---
|
||||
>>>;
|
||||
1 >
|
||||
|
|
|
@ -11,7 +11,12 @@ var f6 = () => { return [<any>10]; }
|
|||
|
||||
|
||||
//// [declFileRestParametersOfFunctionAndFunctionType.js]
|
||||
function f1() { }
|
||||
function f1() {
|
||||
var args = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
args[_i - 0] = arguments[_i];
|
||||
}
|
||||
}
|
||||
function f2(x) { }
|
||||
function f3(x) { }
|
||||
function f4() { }
|
||||
|
|
|
@ -10,7 +10,12 @@ foo(() => { return false; });
|
|||
//// [emitArrowFunction.js]
|
||||
var f1 = function () { };
|
||||
var f2 = function (x, y) { };
|
||||
var f3 = function (x, y) { };
|
||||
var f3 = function (x, y) {
|
||||
var rest = [];
|
||||
for (var _i = 2; _i < arguments.length; _i++) {
|
||||
rest[_i - 2] = arguments[_i];
|
||||
}
|
||||
};
|
||||
var f4 = function (x, y, z) {
|
||||
if (z === void 0) { z = 10; }
|
||||
};
|
||||
|
|
|
@ -3,5 +3,15 @@ function bar(...rest) { }
|
|||
function foo(x: number, y: string, ...rest) { }
|
||||
|
||||
//// [emitRestParametersFunction.js]
|
||||
function bar() { }
|
||||
function foo(x, y) { }
|
||||
function bar() {
|
||||
var rest = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
rest[_i - 0] = arguments[_i];
|
||||
}
|
||||
}
|
||||
function foo(x, y) {
|
||||
var rest = [];
|
||||
for (var _i = 2; _i < arguments.length; _i++) {
|
||||
rest[_i - 2] = arguments[_i];
|
||||
}
|
||||
}
|
||||
|
|
|
@ -6,7 +6,27 @@ var funcExp3 = (function (...rest) { })()
|
|||
|
||||
|
||||
//// [emitRestParametersFunctionExpression.js]
|
||||
var funcExp = function () { };
|
||||
var funcExp1 = function (X) { };
|
||||
var funcExp2 = function () { };
|
||||
var funcExp3 = (function () { })();
|
||||
var funcExp = function () {
|
||||
var rest = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
rest[_i - 0] = arguments[_i];
|
||||
}
|
||||
};
|
||||
var funcExp1 = function (X) {
|
||||
var rest = [];
|
||||
for (var _i = 1; _i < arguments.length; _i++) {
|
||||
rest[_i - 1] = arguments[_i];
|
||||
}
|
||||
};
|
||||
var funcExp2 = function () {
|
||||
var rest = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
rest[_i - 0] = arguments[_i];
|
||||
}
|
||||
};
|
||||
var funcExp3 = (function () {
|
||||
var rest = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
rest[_i - 0] = arguments[_i];
|
||||
}
|
||||
})();
|
||||
|
|
|
@ -10,5 +10,10 @@ var obj2 = {
|
|||
//// [emitRestParametersFunctionProperty.js]
|
||||
var obj;
|
||||
var obj2 = {
|
||||
func: function () { }
|
||||
func: function () {
|
||||
var rest = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
rest[_i - 0] = arguments[_i];
|
||||
}
|
||||
}
|
||||
};
|
||||
|
|
|
@ -21,8 +21,18 @@ var C = (function () {
|
|||
rest[_i - 1] = arguments[_i];
|
||||
}
|
||||
}
|
||||
C.prototype.bar = function () { };
|
||||
C.prototype.foo = function (x) { };
|
||||
C.prototype.bar = function () {
|
||||
var rest = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
rest[_i - 0] = arguments[_i];
|
||||
}
|
||||
};
|
||||
C.prototype.foo = function (x) {
|
||||
var rest = [];
|
||||
for (var _i = 1; _i < arguments.length; _i++) {
|
||||
rest[_i - 1] = arguments[_i];
|
||||
}
|
||||
};
|
||||
return C;
|
||||
})();
|
||||
var D = (function () {
|
||||
|
@ -32,7 +42,17 @@ var D = (function () {
|
|||
rest[_i - 0] = arguments[_i];
|
||||
}
|
||||
}
|
||||
D.prototype.bar = function () { };
|
||||
D.prototype.foo = function (x) { };
|
||||
D.prototype.bar = function () {
|
||||
var rest = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
rest[_i - 0] = arguments[_i];
|
||||
}
|
||||
};
|
||||
D.prototype.foo = function (x) {
|
||||
var rest = [];
|
||||
for (var _i = 1; _i < arguments.length; _i++) {
|
||||
rest[_i - 1] = arguments[_i];
|
||||
}
|
||||
};
|
||||
return D;
|
||||
})();
|
||||
|
|
|
@ -240,7 +240,12 @@ var SplatMonster = (function () {
|
|||
args[_i - 0] = arguments[_i];
|
||||
}
|
||||
}
|
||||
SplatMonster.prototype.roar = function (name) { };
|
||||
SplatMonster.prototype.roar = function (name) {
|
||||
var args = [];
|
||||
for (var _i = 1; _i < arguments.length; _i++) {
|
||||
args[_i - 1] = arguments[_i];
|
||||
}
|
||||
};
|
||||
return SplatMonster;
|
||||
})();
|
||||
function foo() { return true; }
|
||||
|
|
|
@ -33,4 +33,9 @@ false ? (function () { return null; }) : null;
|
|||
var x1 = function () { };
|
||||
var x2 = function (a) { };
|
||||
var x3 = function (a) { };
|
||||
var x4 = function () { };
|
||||
var x4 = function () {
|
||||
var a = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
a[_i - 0] = arguments[_i];
|
||||
}
|
||||
};
|
||||
|
|
|
@ -351,7 +351,12 @@ false ? null : function () {
|
|||
return 108;
|
||||
});
|
||||
// Function Parameters
|
||||
function foo() { }
|
||||
function foo() {
|
||||
var arg = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
arg[_i - 0] = arguments[_i];
|
||||
}
|
||||
}
|
||||
foo(function (a) { return 110; }, (function (a) { return 111; }), function (a) {
|
||||
return 112;
|
||||
}, function (a) { return 113; }, function (a, b) { return 114; }, function (a) { return 115; }, function (a) {
|
||||
|
|
|
@ -7,7 +7,12 @@ foo(1, 'bar');
|
|||
|
||||
|
||||
//// [functionCall10.js]
|
||||
function foo() { }
|
||||
function foo() {
|
||||
var a = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
a[_i - 0] = arguments[_i];
|
||||
}
|
||||
}
|
||||
;
|
||||
foo(0, 1);
|
||||
foo('foo');
|
||||
|
|
|
@ -8,7 +8,12 @@ foo('foo', 1, 3);
|
|||
|
||||
|
||||
//// [functionCall13.js]
|
||||
function foo(a) { }
|
||||
function foo(a) {
|
||||
var b = [];
|
||||
for (var _i = 1; _i < arguments.length; _i++) {
|
||||
b[_i - 1] = arguments[_i];
|
||||
}
|
||||
}
|
||||
foo('foo', 1);
|
||||
foo('foo');
|
||||
foo();
|
||||
|
|
|
@ -8,7 +8,12 @@ foo('foo', 1, 3);
|
|||
|
||||
|
||||
//// [functionCall14.js]
|
||||
function foo(a) { }
|
||||
function foo(a) {
|
||||
var b = [];
|
||||
for (var _i = 1; _i < arguments.length; _i++) {
|
||||
b[_i - 1] = arguments[_i];
|
||||
}
|
||||
}
|
||||
foo('foo', 1);
|
||||
foo('foo');
|
||||
foo();
|
||||
|
|
|
@ -2,4 +2,9 @@
|
|||
function foo(a?:string, b?:number, ...b:number[]){}
|
||||
|
||||
//// [functionCall15.js]
|
||||
function foo(a, b) { }
|
||||
function foo(a, b) {
|
||||
var b = [];
|
||||
for (var _i = 2; _i < arguments.length; _i++) {
|
||||
b[_i - 2] = arguments[_i];
|
||||
}
|
||||
}
|
||||
|
|
|
@ -9,7 +9,12 @@ foo('foo', 'bar', 3);
|
|||
|
||||
|
||||
//// [functionCall16.js]
|
||||
function foo(a, b) { }
|
||||
function foo(a, b) {
|
||||
var c = [];
|
||||
for (var _i = 2; _i < arguments.length; _i++) {
|
||||
c[_i - 2] = arguments[_i];
|
||||
}
|
||||
}
|
||||
foo('foo', 1);
|
||||
foo('foo');
|
||||
foo('foo', 'bar');
|
||||
|
|
|
@ -9,7 +9,12 @@ foo('foo', 'bar', 3, 4);
|
|||
|
||||
|
||||
//// [functionCall17.js]
|
||||
function foo(a, b, c) { }
|
||||
function foo(a, b, c) {
|
||||
var d = [];
|
||||
for (var _i = 3; _i < arguments.length; _i++) {
|
||||
d[_i - 3] = arguments[_i];
|
||||
}
|
||||
}
|
||||
foo('foo', 1);
|
||||
foo('foo');
|
||||
foo();
|
||||
|
|
|
@ -19,7 +19,12 @@ function bar(x, y) { }
|
|||
; // error at "y"; no error at "x"
|
||||
function func2(a, b, c) { }
|
||||
; // error at "a,b,c"
|
||||
function func3() { }
|
||||
function func3() {
|
||||
var args = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
args[_i - 0] = arguments[_i];
|
||||
}
|
||||
}
|
||||
; // error at "args"
|
||||
function func4(z, w) {
|
||||
if (z === void 0) { z = null; }
|
||||
|
|
|
@ -12,9 +12,24 @@ i(a); // OK
|
|||
|
||||
|
||||
//// [inferTypeArgumentsInSignatureWithRestParameters.js]
|
||||
function f(array) { }
|
||||
function g(array) { }
|
||||
function h(nonarray) { }
|
||||
function f(array) {
|
||||
var args = [];
|
||||
for (var _i = 1; _i < arguments.length; _i++) {
|
||||
args[_i - 1] = arguments[_i];
|
||||
}
|
||||
}
|
||||
function g(array) {
|
||||
var args = [];
|
||||
for (var _i = 1; _i < arguments.length; _i++) {
|
||||
args[_i - 1] = arguments[_i];
|
||||
}
|
||||
}
|
||||
function h(nonarray) {
|
||||
var args = [];
|
||||
for (var _i = 1; _i < arguments.length; _i++) {
|
||||
args[_i - 1] = arguments[_i];
|
||||
}
|
||||
}
|
||||
function i(array, opt) { }
|
||||
var a = [1, 2, 3, 4, 5];
|
||||
f(a); // OK
|
||||
|
|
|
@ -56,9 +56,19 @@ function f4(x, y, z) { }
|
|||
// Implicit-'any' errors for x, and z.
|
||||
function f5(x, y, z) { }
|
||||
// Implicit-'any[]' error for r.
|
||||
function f6() { }
|
||||
function f6() {
|
||||
var r = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
r[_i - 0] = arguments[_i];
|
||||
}
|
||||
}
|
||||
// Implicit-'any'/'any[]' errors for x, r.
|
||||
function f7(x) { }
|
||||
function f7(x) {
|
||||
var r = [];
|
||||
for (var _i = 1; _i < arguments.length; _i++) {
|
||||
r[_i - 1] = arguments[_i];
|
||||
}
|
||||
}
|
||||
function f8(x3, y3) { }
|
||||
// No implicit-'any' errors.
|
||||
var f9 = function () { return ""; };
|
||||
|
|
|
@ -155,9 +155,19 @@ var C = (function () {
|
|||
// Implicit-'any' errors for x, and z.
|
||||
C.prototype.pub_f5 = function (x, y, z) { };
|
||||
// Implicit-'any[]' errors for r.
|
||||
C.prototype.pub_f6 = function () { };
|
||||
C.prototype.pub_f6 = function () {
|
||||
var r = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
r[_i - 0] = arguments[_i];
|
||||
}
|
||||
};
|
||||
// Implicit-'any'/'any[]' errors for x, r.
|
||||
C.prototype.pub_f7 = function (x) { };
|
||||
C.prototype.pub_f7 = function (x) {
|
||||
var r = [];
|
||||
for (var _i = 1; _i < arguments.length; _i++) {
|
||||
r[_i - 1] = arguments[_i];
|
||||
}
|
||||
};
|
||||
C.prototype.pub_f8 = function (x3, y3) { };
|
||||
///////////////////////////////////////////
|
||||
// No implicit-'any' errors.
|
||||
|
@ -171,9 +181,19 @@ var C = (function () {
|
|||
// Implicit-'any' errors for x, and z.
|
||||
C.prototype.priv_f5 = function (x, y, z) { };
|
||||
// Implicit-'any[]' errors for r.
|
||||
C.prototype.priv_f6 = function () { };
|
||||
C.prototype.priv_f6 = function () {
|
||||
var r = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
r[_i - 0] = arguments[_i];
|
||||
}
|
||||
};
|
||||
// Implicit-'any'/'any[]' errors for x, r.
|
||||
C.prototype.priv_f7 = function (x) { };
|
||||
C.prototype.priv_f7 = function (x) {
|
||||
var r = [];
|
||||
for (var _i = 1; _i < arguments.length; _i++) {
|
||||
r[_i - 1] = arguments[_i];
|
||||
}
|
||||
};
|
||||
C.prototype.priv_f8 = function (x3, y3) { };
|
||||
return C;
|
||||
})();
|
||||
|
|
|
@ -60,9 +60,19 @@ var M;
|
|||
// Implicit-'any' errors for x and z.
|
||||
function m_f5(x, y, z) { }
|
||||
// Implicit-'any[]' error for r.
|
||||
function m_f6() { }
|
||||
function m_f6() {
|
||||
var r = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
r[_i - 0] = arguments[_i];
|
||||
}
|
||||
}
|
||||
// Implicit-'any'/'any[]' errors for x and r.
|
||||
function m_f7(x) { }
|
||||
function m_f7(x) {
|
||||
var r = [];
|
||||
for (var _i = 1; _i < arguments.length; _i++) {
|
||||
r[_i - 1] = arguments[_i];
|
||||
}
|
||||
}
|
||||
function m_f8(x3, y3) { }
|
||||
// No implicit-'any' errors.
|
||||
var m_f9 = function () { return ""; };
|
||||
|
|
|
@ -11,6 +11,10 @@ foo([false, 0, ""]);
|
|||
|
||||
//// [optionalBindingParametersInOverloads1.js]
|
||||
function foo() {
|
||||
var rest = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
rest[_i - 0] = arguments[_i];
|
||||
}
|
||||
}
|
||||
foo(["", 0, false]);
|
||||
foo([false, 0, ""]);
|
||||
|
|
|
@ -11,6 +11,10 @@ foo({ x: false, y: 0, z: "" });
|
|||
|
||||
//// [optionalBindingParametersInOverloads2.js]
|
||||
function foo() {
|
||||
var rest = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
rest[_i - 0] = arguments[_i];
|
||||
}
|
||||
}
|
||||
foo({ x: "", y: 0, z: false });
|
||||
foo({ x: false, y: 0, z: "" });
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
//// [out-flag.js.map]
|
||||
{"version":3,"file":"out-flag.js","sourceRoot":"","sources":["out-flag.ts"],"names":["MyClass","MyClass.constructor","MyClass.Count"],"mappings":"AAAA,eAAe;AAGf,AADA,oBAAoB;IACd,OAAO;IAAbA,SAAMA,OAAOA;IAYbC,CAACA;IAVGD,uBAAuBA;IAChBA,uBAAKA,GAAZA;QAEIE,MAAMA,CAACA,EAAEA,CAACA;IACdA,CAACA;IAEMF,0BAAQA,GAAfA,UAAgBA,KAAaA;QAEzBA,EAAEA;IACNA,CAACA;IACLA,cAACA;AAADA,CAACA,AAZD,IAYC"}
|
||||
{"version":3,"file":"out-flag.js","sourceRoot":"","sources":["out-flag.ts"],"names":["MyClass","MyClass.constructor","MyClass.Count","MyClass.SetCount"],"mappings":"AAAA,eAAe;AAGf,AADA,oBAAoB;IACd,OAAO;IAAbA,SAAMA,OAAOA;IAYbC,CAACA;IAVGD,uBAAuBA;IAChBA,uBAAKA,GAAZA;QAEIE,MAAMA,CAACA,EAAEA,CAACA;IACdA,CAACA;IAEMF,0BAAQA,GAAfA,UAAgBA,KAAaA;QAEzBG,EAAEA;IACNA,CAACA;IACLH,cAACA;AAADA,CAACA,AAZD,IAYC"}
|
|
@ -150,8 +150,8 @@ sourceFile:out-flag.ts
|
|||
> {
|
||||
>
|
||||
2 > //
|
||||
1 >Emitted(11, 9) Source(14, 9) + SourceIndex(0) name (MyClass)
|
||||
2 >Emitted(11, 11) Source(14, 11) + SourceIndex(0) name (MyClass)
|
||||
1 >Emitted(11, 9) Source(14, 9) + SourceIndex(0) name (MyClass.SetCount)
|
||||
2 >Emitted(11, 11) Source(14, 11) + SourceIndex(0) name (MyClass.SetCount)
|
||||
---
|
||||
>>> };
|
||||
1 >^^^^
|
||||
|
@ -160,8 +160,8 @@ sourceFile:out-flag.ts
|
|||
1 >
|
||||
>
|
||||
2 > }
|
||||
1 >Emitted(12, 5) Source(15, 5) + SourceIndex(0) name (MyClass)
|
||||
2 >Emitted(12, 6) Source(15, 6) + SourceIndex(0) name (MyClass)
|
||||
1 >Emitted(12, 5) Source(15, 5) + SourceIndex(0) name (MyClass.SetCount)
|
||||
2 >Emitted(12, 6) Source(15, 6) + SourceIndex(0) name (MyClass.SetCount)
|
||||
---
|
||||
>>> return MyClass;
|
||||
1->^^^^
|
||||
|
|
|
@ -8,7 +8,12 @@ var C = (function () {
|
|||
function C() {
|
||||
}
|
||||
Object.defineProperty(C.prototype, "Foo", {
|
||||
set: function () { },
|
||||
set: function () {
|
||||
var a = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
a[_i - 0] = arguments[_i];
|
||||
}
|
||||
},
|
||||
enumerable: true,
|
||||
configurable: true
|
||||
});
|
||||
|
|
|
@ -7,6 +7,11 @@ class C {
|
|||
var C = (function () {
|
||||
function C() {
|
||||
}
|
||||
C.prototype.foo = function () { };
|
||||
C.prototype.foo = function () {
|
||||
var bar = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
bar[_i - 0] = arguments[_i];
|
||||
}
|
||||
};
|
||||
return C;
|
||||
})();
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
//// [properties.js.map]
|
||||
{"version":3,"file":"properties.js","sourceRoot":"","sources":["properties.ts"],"names":["MyClass","MyClass.constructor","MyClass.Count"],"mappings":"AACA,IAAM,OAAO;IAAbA,SAAMA,OAAOA;IAWbC,CAACA;IATGD,sBAAWA,0BAAKA;aAAhBA;YAEIE,MAAMA,CAACA,EAAEA,CAACA;QACdA,CAACA;aAEDF,UAAiBA,KAAaA;YAE1BA,EAAEA;QACNA,CAACA;;;OALAA;IAMLA,cAACA;AAADA,CAACA,AAXD,IAWC"}
|
||||
{"version":3,"file":"properties.js","sourceRoot":"","sources":["properties.ts"],"names":["MyClass","MyClass.constructor","MyClass.Count"],"mappings":"AACA,IAAM,OAAO;IAAbA,SAAMA,OAAOA;IAWbC,CAACA;IATGD,sBAAWA,0BAAKA;aAAhBA;YAEIE,MAAMA,CAACA,EAAEA,CAACA;QACdA,CAACA;aAEDF,UAAiBA,KAAaA;YAE1BE,EAAEA;QACNA,CAACA;;;OALAF;IAMLA,cAACA;AAADA,CAACA,AAXD,IAWC"}
|
|
@ -118,8 +118,8 @@ sourceFile:properties.ts
|
|||
> {
|
||||
>
|
||||
2 > //
|
||||
1 >Emitted(9, 13) Source(11, 9) + SourceIndex(0) name (MyClass)
|
||||
2 >Emitted(9, 15) Source(11, 11) + SourceIndex(0) name (MyClass)
|
||||
1 >Emitted(9, 13) Source(11, 9) + SourceIndex(0) name (MyClass.Count)
|
||||
2 >Emitted(9, 15) Source(11, 11) + SourceIndex(0) name (MyClass.Count)
|
||||
---
|
||||
>>> },
|
||||
1 >^^^^^^^^
|
||||
|
@ -128,8 +128,8 @@ sourceFile:properties.ts
|
|||
1 >
|
||||
>
|
||||
2 > }
|
||||
1 >Emitted(10, 9) Source(12, 5) + SourceIndex(0) name (MyClass)
|
||||
2 >Emitted(10, 10) Source(12, 6) + SourceIndex(0) name (MyClass)
|
||||
1 >Emitted(10, 9) Source(12, 5) + SourceIndex(0) name (MyClass.Count)
|
||||
2 >Emitted(10, 10) Source(12, 6) + SourceIndex(0) name (MyClass.Count)
|
||||
---
|
||||
>>> enumerable: true,
|
||||
>>> configurable: true
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
//// [recursiveClassReferenceTest.js.map]
|
||||
{"version":3,"file":"recursiveClassReferenceTest.js","sourceRoot":"","sources":["recursiveClassReferenceTest.ts"],"names":["Sample","Sample.Actions","Sample.Actions.Thing","Sample.Actions.Thing.Find","Sample.Actions.Thing.Find.StartFindAction","Sample.Actions.Thing.Find.StartFindAction.constructor","Sample.Actions.Thing.Find.StartFindAction.getId","Sample.Actions.Thing.Find.StartFindAction.run","Sample.Thing","Sample.Thing.Widgets","Sample.Thing.Widgets.FindWidget","Sample.Thing.Widgets.FindWidget.constructor","Sample.Thing.Widgets.FindWidget.gar","Sample.Thing.Widgets.FindWidget.getDomNode","AbstractMode","AbstractMode.constructor","AbstractMode.getInitialState","Sample.Thing.Languages","Sample.Thing.Languages.PlainText","Sample.Thing.Languages.PlainText.State","Sample.Thing.Languages.PlainText.State.constructor","Sample.Thing.Languages.PlainText.State.clone","Sample.Thing.Languages.PlainText.State.equals","Sample.Thing.Languages.PlainText.State.getMode","Sample.Thing.Languages.PlainText.Mode","Sample.Thing.Languages.PlainText.Mode.constructor","Sample.Thing.Languages.PlainText.Mode.getInitialState"],"mappings":"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"}
|
||||
{"version":3,"file":"recursiveClassReferenceTest.js","sourceRoot":"","sources":["recursiveClassReferenceTest.ts"],"names":["Sample","Sample.Actions","Sample.Actions.Thing","Sample.Actions.Thing.Find","Sample.Actions.Thing.Find.StartFindAction","Sample.Actions.Thing.Find.StartFindAction.constructor","Sample.Actions.Thing.Find.StartFindAction.getId","Sample.Actions.Thing.Find.StartFindAction.run","Sample.Thing","Sample.Thing.Widgets","Sample.Thing.Widgets.FindWidget","Sample.Thing.Widgets.FindWidget.constructor","Sample.Thing.Widgets.FindWidget.gar","Sample.Thing.Widgets.FindWidget.getDomNode","Sample.Thing.Widgets.FindWidget.destroy","AbstractMode","AbstractMode.constructor","AbstractMode.getInitialState","Sample.Thing.Languages","Sample.Thing.Languages.PlainText","Sample.Thing.Languages.PlainText.State","Sample.Thing.Languages.PlainText.State.constructor","Sample.Thing.Languages.PlainText.State.clone","Sample.Thing.Languages.PlainText.State.equals","Sample.Thing.Languages.PlainText.State.getMode","Sample.Thing.Languages.PlainText.Mode","Sample.Thing.Languages.PlainText.Mode.constructor","Sample.Thing.Languages.PlainText.Mode.getInitialState"],"mappings":"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"}
|
|
@ -975,8 +975,8 @@ sourceFile:recursiveClassReferenceTest.ts
|
|||
>
|
||||
>
|
||||
2 > }
|
||||
1 >Emitted(51, 17) Source(61, 3) + SourceIndex(0) name (Sample.Thing.Widgets.FindWidget)
|
||||
2 >Emitted(51, 18) Source(61, 4) + SourceIndex(0) name (Sample.Thing.Widgets.FindWidget)
|
||||
1 >Emitted(51, 17) Source(61, 3) + SourceIndex(0) name (Sample.Thing.Widgets.FindWidget.destroy)
|
||||
2 >Emitted(51, 18) Source(61, 4) + SourceIndex(0) name (Sample.Thing.Widgets.FindWidget.destroy)
|
||||
---
|
||||
>>> return FindWidget;
|
||||
1->^^^^^^^^^^^^^^^^
|
||||
|
|
|
@ -3,4 +3,9 @@ function sum (...) {}
|
|||
|
||||
|
||||
//// [restArgMissingName.js]
|
||||
function sum() { }
|
||||
function sum() {
|
||||
var = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
[_i - 0] = arguments[_i];
|
||||
}
|
||||
}
|
||||
|
|
|
@ -3,7 +3,12 @@ function f(...x?) { }
|
|||
function f2(...x = []) { }
|
||||
|
||||
//// [restParamAsOptional.js]
|
||||
function f() { }
|
||||
function f() {
|
||||
var x = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
x[_i - 0] = arguments[_i];
|
||||
}
|
||||
}
|
||||
function f2() {
|
||||
if (x === void 0) { x = []; }
|
||||
var x = [];
|
||||
|
|
|
@ -31,6 +31,10 @@ var T = (function () {
|
|||
function T() {
|
||||
}
|
||||
T.prototype.m = function () {
|
||||
var p3 = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
p3[_i - 0] = arguments[_i];
|
||||
}
|
||||
};
|
||||
return T;
|
||||
})();
|
||||
|
|
|
@ -28,18 +28,53 @@ var b = {
|
|||
|
||||
//// [restParameterWithoutAnnotationIsAnyArray.js]
|
||||
// Rest parameters without type annotations are 'any', errors only for the functions with 2 rest params
|
||||
function foo() { }
|
||||
var f = function foo() { };
|
||||
var f2 = function (x) { };
|
||||
function foo() {
|
||||
var x = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
x[_i - 0] = arguments[_i];
|
||||
}
|
||||
}
|
||||
var f = function foo() {
|
||||
var x = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
x[_i - 0] = arguments[_i];
|
||||
}
|
||||
};
|
||||
var f2 = function (x) {
|
||||
var y = [];
|
||||
for (var _i = 1; _i < arguments.length; _i++) {
|
||||
y[_i - 1] = arguments[_i];
|
||||
}
|
||||
};
|
||||
var C = (function () {
|
||||
function C() {
|
||||
}
|
||||
C.prototype.foo = function () { };
|
||||
C.prototype.foo = function () {
|
||||
var x = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
x[_i - 0] = arguments[_i];
|
||||
}
|
||||
};
|
||||
return C;
|
||||
})();
|
||||
var a;
|
||||
var b = {
|
||||
foo: function () { },
|
||||
a: function foo(x) { },
|
||||
b: function () { }
|
||||
foo: function () {
|
||||
var x = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
x[_i - 0] = arguments[_i];
|
||||
}
|
||||
},
|
||||
a: function foo(x) {
|
||||
var y = [];
|
||||
for (var _i = 1; _i < arguments.length; _i++) {
|
||||
y[_i - 1] = arguments[_i];
|
||||
}
|
||||
},
|
||||
b: function () {
|
||||
var x = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
x[_i - 0] = arguments[_i];
|
||||
}
|
||||
}
|
||||
};
|
||||
|
|
|
@ -8,7 +8,27 @@ function f20(a:string, b?:string, ...c:number[]){}
|
|||
function f21(a:string, b?:string, c?:number, ...d:number[]){}
|
||||
|
||||
//// [restParameters.js]
|
||||
function f18(a) { }
|
||||
function f19(a, b) { }
|
||||
function f20(a, b) { }
|
||||
function f21(a, b, c) { }
|
||||
function f18(a) {
|
||||
var b = [];
|
||||
for (var _i = 1; _i < arguments.length; _i++) {
|
||||
b[_i - 1] = arguments[_i];
|
||||
}
|
||||
}
|
||||
function f19(a, b) {
|
||||
var c = [];
|
||||
for (var _i = 2; _i < arguments.length; _i++) {
|
||||
c[_i - 2] = arguments[_i];
|
||||
}
|
||||
}
|
||||
function f20(a, b) {
|
||||
var c = [];
|
||||
for (var _i = 2; _i < arguments.length; _i++) {
|
||||
c[_i - 2] = arguments[_i];
|
||||
}
|
||||
}
|
||||
function f21(a, b, c) {
|
||||
var d = [];
|
||||
for (var _i = 3; _i < arguments.length; _i++) {
|
||||
d[_i - 3] = arguments[_i];
|
||||
}
|
||||
}
|
||||
|
|
|
@ -27,18 +27,53 @@ var b = {
|
|||
|
||||
//// [restParametersOfNonArrayTypes.js]
|
||||
// Rest parameters must be an array type if they have a type annotation, so all these are errors
|
||||
function foo() { }
|
||||
var f = function foo() { };
|
||||
var f2 = function (x) { };
|
||||
function foo() {
|
||||
var x = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
x[_i - 0] = arguments[_i];
|
||||
}
|
||||
}
|
||||
var f = function foo() {
|
||||
var x = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
x[_i - 0] = arguments[_i];
|
||||
}
|
||||
};
|
||||
var f2 = function (x) {
|
||||
var y = [];
|
||||
for (var _i = 1; _i < arguments.length; _i++) {
|
||||
y[_i - 1] = arguments[_i];
|
||||
}
|
||||
};
|
||||
var C = (function () {
|
||||
function C() {
|
||||
}
|
||||
C.prototype.foo = function () { };
|
||||
C.prototype.foo = function () {
|
||||
var x = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
x[_i - 0] = arguments[_i];
|
||||
}
|
||||
};
|
||||
return C;
|
||||
})();
|
||||
var a;
|
||||
var b = {
|
||||
foo: function () { },
|
||||
a: function foo(x) { },
|
||||
b: function () { }
|
||||
foo: function () {
|
||||
var x = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
x[_i - 0] = arguments[_i];
|
||||
}
|
||||
},
|
||||
a: function foo(x) {
|
||||
var y = [];
|
||||
for (var _i = 1; _i < arguments.length; _i++) {
|
||||
y[_i - 1] = arguments[_i];
|
||||
}
|
||||
},
|
||||
b: function () {
|
||||
var x = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
x[_i - 0] = arguments[_i];
|
||||
}
|
||||
}
|
||||
};
|
||||
|
|
|
@ -59,33 +59,103 @@ var b2 = {
|
|||
//// [restParametersOfNonArrayTypes2.js]
|
||||
// Rest parameters must be an array type if they have a type annotation,
|
||||
// user defined subtypes of array do not count, all of these are errors
|
||||
function foo() { }
|
||||
var f = function foo() { };
|
||||
var f2 = function (x) { };
|
||||
function foo() {
|
||||
var x = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
x[_i - 0] = arguments[_i];
|
||||
}
|
||||
}
|
||||
var f = function foo() {
|
||||
var x = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
x[_i - 0] = arguments[_i];
|
||||
}
|
||||
};
|
||||
var f2 = function (x) {
|
||||
var y = [];
|
||||
for (var _i = 1; _i < arguments.length; _i++) {
|
||||
y[_i - 1] = arguments[_i];
|
||||
}
|
||||
};
|
||||
var C = (function () {
|
||||
function C() {
|
||||
}
|
||||
C.prototype.foo = function () { };
|
||||
C.prototype.foo = function () {
|
||||
var x = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
x[_i - 0] = arguments[_i];
|
||||
}
|
||||
};
|
||||
return C;
|
||||
})();
|
||||
var a;
|
||||
var b = {
|
||||
foo: function () { },
|
||||
a: function foo(x) { },
|
||||
b: function () { }
|
||||
foo: function () {
|
||||
var x = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
x[_i - 0] = arguments[_i];
|
||||
}
|
||||
},
|
||||
a: function foo(x) {
|
||||
var y = [];
|
||||
for (var _i = 1; _i < arguments.length; _i++) {
|
||||
y[_i - 1] = arguments[_i];
|
||||
}
|
||||
},
|
||||
b: function () {
|
||||
var x = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
x[_i - 0] = arguments[_i];
|
||||
}
|
||||
}
|
||||
};
|
||||
function foo2() {
|
||||
var x = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
x[_i - 0] = arguments[_i];
|
||||
}
|
||||
}
|
||||
var f3 = function foo() {
|
||||
var x = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
x[_i - 0] = arguments[_i];
|
||||
}
|
||||
};
|
||||
var f4 = function (x) {
|
||||
var y = [];
|
||||
for (var _i = 1; _i < arguments.length; _i++) {
|
||||
y[_i - 1] = arguments[_i];
|
||||
}
|
||||
};
|
||||
function foo2() { }
|
||||
var f3 = function foo() { };
|
||||
var f4 = function (x) { };
|
||||
var C2 = (function () {
|
||||
function C2() {
|
||||
}
|
||||
C2.prototype.foo = function () { };
|
||||
C2.prototype.foo = function () {
|
||||
var x = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
x[_i - 0] = arguments[_i];
|
||||
}
|
||||
};
|
||||
return C2;
|
||||
})();
|
||||
var a2;
|
||||
var b2 = {
|
||||
foo: function () { },
|
||||
a: function foo(x) { },
|
||||
b: function () { }
|
||||
foo: function () {
|
||||
var x = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
x[_i - 0] = arguments[_i];
|
||||
}
|
||||
},
|
||||
a: function foo(x) {
|
||||
var y = [];
|
||||
for (var _i = 1; _i < arguments.length; _i++) {
|
||||
y[_i - 1] = arguments[_i];
|
||||
}
|
||||
},
|
||||
b: function () {
|
||||
var x = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
x[_i - 0] = arguments[_i];
|
||||
}
|
||||
}
|
||||
};
|
||||
|
|
|
@ -54,33 +54,103 @@ var b2 = {
|
|||
|
||||
//// [restParametersWithArrayTypeAnnotations.js]
|
||||
// Rest parameters must be an array type if they have a type annotation, errors only for the functions with 2 rest params
|
||||
function foo() { }
|
||||
var f = function foo() { };
|
||||
var f2 = function (x) { };
|
||||
function foo() {
|
||||
var x = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
x[_i - 0] = arguments[_i];
|
||||
}
|
||||
}
|
||||
var f = function foo() {
|
||||
var x = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
x[_i - 0] = arguments[_i];
|
||||
}
|
||||
};
|
||||
var f2 = function (x) {
|
||||
var y = [];
|
||||
for (var _i = 1; _i < arguments.length; _i++) {
|
||||
y[_i - 1] = arguments[_i];
|
||||
}
|
||||
};
|
||||
var C = (function () {
|
||||
function C() {
|
||||
}
|
||||
C.prototype.foo = function () { };
|
||||
C.prototype.foo = function () {
|
||||
var x = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
x[_i - 0] = arguments[_i];
|
||||
}
|
||||
};
|
||||
return C;
|
||||
})();
|
||||
var a;
|
||||
var b = {
|
||||
foo: function () { },
|
||||
a: function foo(x) { },
|
||||
b: function () { }
|
||||
foo: function () {
|
||||
var x = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
x[_i - 0] = arguments[_i];
|
||||
}
|
||||
},
|
||||
a: function foo(x) {
|
||||
var y = [];
|
||||
for (var _i = 1; _i < arguments.length; _i++) {
|
||||
y[_i - 1] = arguments[_i];
|
||||
}
|
||||
},
|
||||
b: function () {
|
||||
var x = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
x[_i - 0] = arguments[_i];
|
||||
}
|
||||
}
|
||||
};
|
||||
function foo2() {
|
||||
var x = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
x[_i - 0] = arguments[_i];
|
||||
}
|
||||
}
|
||||
var f3 = function foo() {
|
||||
var x = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
x[_i - 0] = arguments[_i];
|
||||
}
|
||||
};
|
||||
var f4 = function (x) {
|
||||
var y = [];
|
||||
for (var _i = 1; _i < arguments.length; _i++) {
|
||||
y[_i - 1] = arguments[_i];
|
||||
}
|
||||
};
|
||||
function foo2() { }
|
||||
var f3 = function foo() { };
|
||||
var f4 = function (x) { };
|
||||
var C2 = (function () {
|
||||
function C2() {
|
||||
}
|
||||
C2.prototype.foo = function () { };
|
||||
C2.prototype.foo = function () {
|
||||
var x = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
x[_i - 0] = arguments[_i];
|
||||
}
|
||||
};
|
||||
return C2;
|
||||
})();
|
||||
var a2;
|
||||
var b2 = {
|
||||
foo: function () { },
|
||||
a: function foo(x) { },
|
||||
b: function () { }
|
||||
foo: function () {
|
||||
var x = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
x[_i - 0] = arguments[_i];
|
||||
}
|
||||
},
|
||||
a: function foo(x) {
|
||||
var y = [];
|
||||
for (var _i = 1; _i < arguments.length; _i++) {
|
||||
y[_i - 1] = arguments[_i];
|
||||
}
|
||||
},
|
||||
b: function () {
|
||||
var x = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
x[_i - 0] = arguments[_i];
|
||||
}
|
||||
}
|
||||
};
|
||||
|
|
|
@ -7,9 +7,24 @@ function foo3(a?:string, ...b:number[]){}
|
|||
foo3(); // error but shouldn't be
|
||||
|
||||
//// [restParamsWithNonRestParams.js]
|
||||
function foo() { }
|
||||
function foo() {
|
||||
var b = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
b[_i - 0] = arguments[_i];
|
||||
}
|
||||
}
|
||||
foo(); // ok
|
||||
function foo2(a) { }
|
||||
function foo2(a) {
|
||||
var b = [];
|
||||
for (var _i = 1; _i < arguments.length; _i++) {
|
||||
b[_i - 1] = arguments[_i];
|
||||
}
|
||||
}
|
||||
foo2(); // should be an error
|
||||
function foo3(a) { }
|
||||
function foo3(a) {
|
||||
var b = [];
|
||||
for (var _i = 1; _i < arguments.length; _i++) {
|
||||
b[_i - 1] = arguments[_i];
|
||||
}
|
||||
}
|
||||
foo3(); // error but shouldn't be
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
//// [sourceMap-FileWithComments.js.map]
|
||||
{"version":3,"file":"sourceMap-FileWithComments.js","sourceRoot":"","sources":["sourceMap-FileWithComments.ts"],"names":["Shapes","Shapes.Point","Shapes.Point.constructor","Shapes.Point.getDist"],"mappings":"AAOA,AADA,SAAS;AACT,IAAO,MAAM,CAwBZ;AAxBD,WAAO,MAAM,EAAC,CAAC;IAGXA,AADAA,QAAQA;QACKA,KAAKA;QACdC,cAAcA;QACdA,SAFSA,KAAKA,CAEKA,CAASA,EAASA,CAASA;YAA3BC,MAACA,GAADA,CAACA,CAAQA;YAASA,MAACA,GAADA,CAACA,CAAQA;QAAIA,CAACA;QAEnDD,kBAAkBA;QAClBA,uBAAOA,GAAPA,cAAYE,MAAMA,CAACA,IAAIA,CAACA,IAAIA,CAACA,IAAIA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,CAACA,CAACA,CAACA,CAACA;QAElEF,gBAAgBA;QACTA,YAAMA,GAAGA,IAAIA,KAAKA,CAACA,CAACA,EAAEA,CAACA,CAACA,CAACA;QACpCA,YAACA;IAADA,CAACA,AATDD,IASCA;IATYA,YAAKA,GAALA,KASZA,CAAAA;IAGDA,AADAA,+BAA+BA;QAC3BA,CAACA,GAAGA,EAAEA,CAACA;IAEXA,SAAgBA,GAAGA;IACnBA,CAACA;IADeA,UAAGA,GAAHA,GACfA,CAAAA;IAKDA,AAHAA;;MAEEA;QACEA,CAACA,GAAGA,EAAEA,CAACA;AACfA,CAACA,EAxBM,MAAM,KAAN,MAAM,QAwBZ;AAGD,AADA,qBAAqB;IACjB,CAAC,GAAW,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AACvC,IAAI,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC"}
|
||||
{"version":3,"file":"sourceMap-FileWithComments.js","sourceRoot":"","sources":["sourceMap-FileWithComments.ts"],"names":["Shapes","Shapes.Point","Shapes.Point.constructor","Shapes.Point.getDist","Shapes.foo"],"mappings":"AAOA,AADA,SAAS;AACT,IAAO,MAAM,CAwBZ;AAxBD,WAAO,MAAM,EAAC,CAAC;IAGXA,AADAA,QAAQA;QACKA,KAAKA;QACdC,cAAcA;QACdA,SAFSA,KAAKA,CAEKA,CAASA,EAASA,CAASA;YAA3BC,MAACA,GAADA,CAACA,CAAQA;YAASA,MAACA,GAADA,CAACA,CAAQA;QAAIA,CAACA;QAEnDD,kBAAkBA;QAClBA,uBAAOA,GAAPA,cAAYE,MAAMA,CAACA,IAAIA,CAACA,IAAIA,CAACA,IAAIA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,CAACA,CAACA,CAACA,CAACA;QAElEF,gBAAgBA;QACTA,YAAMA,GAAGA,IAAIA,KAAKA,CAACA,CAACA,EAAEA,CAACA,CAACA,CAACA;QACpCA,YAACA;IAADA,CAACA,AATDD,IASCA;IATYA,YAAKA,GAALA,KASZA,CAAAA;IAGDA,AADAA,+BAA+BA;QAC3BA,CAACA,GAAGA,EAAEA,CAACA;IAEXA,SAAgBA,GAAGA;IACnBI,CAACA;IADeJ,UAAGA,GAAHA,GACfA,CAAAA;IAKDA,AAHAA;;MAEEA;QACEA,CAACA,GAAGA,EAAEA,CAACA;AACfA,CAACA,EAxBM,MAAM,KAAN,MAAM,QAwBZ;AAGD,AADA,qBAAqB;IACjB,CAAC,GAAW,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AACvC,IAAI,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC"}
|
|
@ -450,8 +450,8 @@ sourceFile:sourceMap-FileWithComments.ts
|
|||
1 >() {
|
||||
>
|
||||
2 > }
|
||||
1 >Emitted(21, 5) Source(26, 5) + SourceIndex(0) name (Shapes)
|
||||
2 >Emitted(21, 6) Source(26, 6) + SourceIndex(0) name (Shapes)
|
||||
1 >Emitted(21, 5) Source(26, 5) + SourceIndex(0) name (Shapes.foo)
|
||||
2 >Emitted(21, 6) Source(26, 6) + SourceIndex(0) name (Shapes.foo)
|
||||
---
|
||||
>>> Shapes.foo = foo;
|
||||
1->^^^^
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
//// [sourceMapValidationFunctionPropertyAssignment.js.map]
|
||||
{"version":3,"file":"sourceMapValidationFunctionPropertyAssignment.js","sourceRoot":"","sources":["sourceMapValidationFunctionPropertyAssignment.ts"],"names":[],"mappings":"AAAA,IAAI,CAAC,GAAG,EAAE,CAAC,gBAAK,CAAC,EAAE,CAAC"}
|
||||
{"version":3,"file":"sourceMapValidationFunctionPropertyAssignment.js","sourceRoot":"","sources":["sourceMapValidationFunctionPropertyAssignment.ts"],"names":["n"],"mappings":"AAAA,IAAI,CAAC,GAAG,EAAE,CAAC,gBAAKA,CAACA,EAAE,CAAC"}
|
|
@ -36,8 +36,8 @@ sourceFile:sourceMapValidationFunctionPropertyAssignment.ts
|
|||
4 >Emitted(1, 9) Source(1, 9) + SourceIndex(0)
|
||||
5 >Emitted(1, 11) Source(1, 11) + SourceIndex(0)
|
||||
6 >Emitted(1, 12) Source(1, 12) + SourceIndex(0)
|
||||
7 >Emitted(1, 28) Source(1, 17) + SourceIndex(0)
|
||||
8 >Emitted(1, 29) Source(1, 18) + SourceIndex(0)
|
||||
7 >Emitted(1, 28) Source(1, 17) + SourceIndex(0) name (n)
|
||||
8 >Emitted(1, 29) Source(1, 18) + SourceIndex(0) name (n)
|
||||
9 >Emitted(1, 31) Source(1, 20) + SourceIndex(0)
|
||||
10>Emitted(1, 32) Source(1, 21) + SourceIndex(0)
|
||||
---
|
||||
|
|
|
@ -8,5 +8,9 @@ foo `${function (x: number) { x = "bad"; } }`;
|
|||
|
||||
//// [taggedTemplateStringsWithTypeErrorInFunctionExpressionsInSubstitutionExpression.js]
|
||||
function foo() {
|
||||
var rest = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
rest[_i - 0] = arguments[_i];
|
||||
}
|
||||
}
|
||||
foo "" + function (x) { x = "bad"; };
|
||||
|
|
File diff suppressed because one or more lines are too long
|
@ -2276,8 +2276,8 @@ sourceFile:typeResolution.ts
|
|||
1->Emitted(114, 21) Source(79, 42) + SourceIndex(0) name (TopLevelModule1.SubModule2.SubSubModule2.ClassA)
|
||||
2 >Emitted(114, 48) Source(79, 52) + SourceIndex(0) name (TopLevelModule1.SubModule2.SubSubModule2.ClassA)
|
||||
3 >Emitted(114, 51) Source(79, 35) + SourceIndex(0) name (TopLevelModule1.SubModule2.SubSubModule2.ClassA)
|
||||
4 >Emitted(114, 65) Source(79, 57) + SourceIndex(0) name (TopLevelModule1.SubModule2.SubSubModule2.ClassA)
|
||||
5 >Emitted(114, 66) Source(79, 58) + SourceIndex(0) name (TopLevelModule1.SubModule2.SubSubModule2.ClassA)
|
||||
4 >Emitted(114, 65) Source(79, 57) + SourceIndex(0) name (TopLevelModule1.SubModule2.SubSubModule2.ClassA.AisIn1_2_2)
|
||||
5 >Emitted(114, 66) Source(79, 58) + SourceIndex(0) name (TopLevelModule1.SubModule2.SubSubModule2.ClassA.AisIn1_2_2)
|
||||
---
|
||||
>>> return ClassA;
|
||||
1 >^^^^^^^^^^^^^^^^^^^^
|
||||
|
@ -2366,8 +2366,8 @@ sourceFile:typeResolution.ts
|
|||
1->Emitted(121, 21) Source(80, 42) + SourceIndex(0) name (TopLevelModule1.SubModule2.SubSubModule2.ClassB)
|
||||
2 >Emitted(121, 48) Source(80, 52) + SourceIndex(0) name (TopLevelModule1.SubModule2.SubSubModule2.ClassB)
|
||||
3 >Emitted(121, 51) Source(80, 35) + SourceIndex(0) name (TopLevelModule1.SubModule2.SubSubModule2.ClassB)
|
||||
4 >Emitted(121, 65) Source(80, 57) + SourceIndex(0) name (TopLevelModule1.SubModule2.SubSubModule2.ClassB)
|
||||
5 >Emitted(121, 66) Source(80, 58) + SourceIndex(0) name (TopLevelModule1.SubModule2.SubSubModule2.ClassB)
|
||||
4 >Emitted(121, 65) Source(80, 57) + SourceIndex(0) name (TopLevelModule1.SubModule2.SubSubModule2.ClassB.BisIn1_2_2)
|
||||
5 >Emitted(121, 66) Source(80, 58) + SourceIndex(0) name (TopLevelModule1.SubModule2.SubSubModule2.ClassB.BisIn1_2_2)
|
||||
---
|
||||
>>> return ClassB;
|
||||
1 >^^^^^^^^^^^^^^^^^^^^
|
||||
|
@ -2456,8 +2456,8 @@ sourceFile:typeResolution.ts
|
|||
1->Emitted(128, 21) Source(81, 42) + SourceIndex(0) name (TopLevelModule1.SubModule2.SubSubModule2.ClassC)
|
||||
2 >Emitted(128, 48) Source(81, 52) + SourceIndex(0) name (TopLevelModule1.SubModule2.SubSubModule2.ClassC)
|
||||
3 >Emitted(128, 51) Source(81, 35) + SourceIndex(0) name (TopLevelModule1.SubModule2.SubSubModule2.ClassC)
|
||||
4 >Emitted(128, 65) Source(81, 57) + SourceIndex(0) name (TopLevelModule1.SubModule2.SubSubModule2.ClassC)
|
||||
5 >Emitted(128, 66) Source(81, 58) + SourceIndex(0) name (TopLevelModule1.SubModule2.SubSubModule2.ClassC)
|
||||
4 >Emitted(128, 65) Source(81, 57) + SourceIndex(0) name (TopLevelModule1.SubModule2.SubSubModule2.ClassC.CisIn1_2_2)
|
||||
5 >Emitted(128, 66) Source(81, 58) + SourceIndex(0) name (TopLevelModule1.SubModule2.SubSubModule2.ClassC.CisIn1_2_2)
|
||||
---
|
||||
>>> return ClassC;
|
||||
1 >^^^^^^^^^^^^^^^^^^^^
|
||||
|
@ -2638,8 +2638,8 @@ sourceFile:typeResolution.ts
|
|||
1->Emitted(137, 13) Source(90, 16) + SourceIndex(0) name (TopLevelModule1.ClassA)
|
||||
2 >Emitted(137, 36) Source(90, 22) + SourceIndex(0) name (TopLevelModule1.ClassA)
|
||||
3 >Emitted(137, 39) Source(90, 9) + SourceIndex(0) name (TopLevelModule1.ClassA)
|
||||
4 >Emitted(137, 53) Source(90, 27) + SourceIndex(0) name (TopLevelModule1.ClassA)
|
||||
5 >Emitted(137, 54) Source(90, 28) + SourceIndex(0) name (TopLevelModule1.ClassA)
|
||||
4 >Emitted(137, 53) Source(90, 27) + SourceIndex(0) name (TopLevelModule1.ClassA.AisIn1)
|
||||
5 >Emitted(137, 54) Source(90, 28) + SourceIndex(0) name (TopLevelModule1.ClassA.AisIn1)
|
||||
---
|
||||
>>> return ClassA;
|
||||
1 >^^^^^^^^^^^^
|
||||
|
@ -3065,8 +3065,8 @@ sourceFile:typeResolution.ts
|
|||
1->Emitted(157, 17) Source(105, 20) + SourceIndex(0) name (TopLevelModule2.SubModule3.ClassA)
|
||||
2 >Emitted(157, 42) Source(105, 28) + SourceIndex(0) name (TopLevelModule2.SubModule3.ClassA)
|
||||
3 >Emitted(157, 45) Source(105, 13) + SourceIndex(0) name (TopLevelModule2.SubModule3.ClassA)
|
||||
4 >Emitted(157, 59) Source(105, 33) + SourceIndex(0) name (TopLevelModule2.SubModule3.ClassA)
|
||||
5 >Emitted(157, 60) Source(105, 34) + SourceIndex(0) name (TopLevelModule2.SubModule3.ClassA)
|
||||
4 >Emitted(157, 59) Source(105, 33) + SourceIndex(0) name (TopLevelModule2.SubModule3.ClassA.AisIn2_3)
|
||||
5 >Emitted(157, 60) Source(105, 34) + SourceIndex(0) name (TopLevelModule2.SubModule3.ClassA.AisIn2_3)
|
||||
---
|
||||
>>> return ClassA;
|
||||
1 >^^^^^^^^^^^^^^^^
|
||||
|
|
|
@ -18,7 +18,12 @@ function instrumentFile(covFileDir: string, covFileName: string, originalFilePat
|
|||
//// [undeclaredModuleError.js]
|
||||
define(["require", "exports", 'fs'], function (require, exports, fs) {
|
||||
function readdir(path, accept, callback) { }
|
||||
function join() { }
|
||||
function join() {
|
||||
var paths = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
paths[_i - 0] = arguments[_i];
|
||||
}
|
||||
}
|
||||
function instrumentFile(covFileDir, covFileName, originalFilePath) {
|
||||
fs.readFile(originalFilePath, function () {
|
||||
readdir(covFileDir, function () {
|
||||
|
|
|
@ -977,7 +977,12 @@ $('#underscore_button').bind('click', buttonView.onClick);
|
|||
var fibonacci = _.memoize(function (n) {
|
||||
return n < 2 ? n : fibonacci(n - 1) + fibonacci(n - 2);
|
||||
});
|
||||
var log = _.bind(function (message) { }, Date);
|
||||
var log = _.bind(function (message) {
|
||||
var rest = [];
|
||||
for (var _i = 1; _i < arguments.length; _i++) {
|
||||
rest[_i - 1] = arguments[_i];
|
||||
}
|
||||
}, Date);
|
||||
_.delay(log, 1000, 'logged later');
|
||||
_.defer(function () { alert('deferred'); });
|
||||
var updatePosition = function () { return alert('updating position...'); };
|
||||
|
|
|
@ -23,6 +23,10 @@ sequence(
|
|||
|
||||
//// [varArgParamTypeCheck.js]
|
||||
function sequence() {
|
||||
var sequences = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
sequences[_i - 0] = arguments[_i];
|
||||
}
|
||||
}
|
||||
function callback(clb) {
|
||||
}
|
||||
|
|
|
@ -2,4 +2,9 @@
|
|||
function t1(...) {}
|
||||
|
||||
//// [varArgWithNoParamName.js]
|
||||
function t1() { }
|
||||
function t1() {
|
||||
var = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
[_i - 0] = arguments[_i];
|
||||
}
|
||||
}
|
||||
|
|
|
@ -57,6 +57,10 @@ var M;
|
|||
return result;
|
||||
};
|
||||
C.prototype.fnope = function (x) {
|
||||
var rest = [];
|
||||
for (var _i = 1; _i < arguments.length; _i++) {
|
||||
rest[_i - 1] = arguments[_i];
|
||||
}
|
||||
};
|
||||
C.prototype.fonly = function () {
|
||||
var rest = [];
|
||||
|
|
Loading…
Reference in a new issue