Backed out changeset 51dbd71f00a5 (bug 984696) for mochitest-2 test failures on a CLOSED TREE

This commit is contained in:
Carsten "Tomcat" Book 2014-04-24 11:22:14 +02:00
Родитель cb89c61677
Коммит 7a445167e7
7 изменённых файлов: 6 добавлений и 92 удалений

Просмотреть файл

@ -3436,8 +3436,6 @@ EmitVariables(ExclusiveContext *cx, BytecodeEmitter *bce, ParseNode *pn, VarEmit
ParseNode *next;
for (ParseNode *pn2 = pn->pn_head; ; pn2 = next) {
if (!UpdateSourceCoordNotes(cx, bce, pn2->pn_pos.begin))
return false;
next = pn2->pn_next;
ParseNode *pn3;
@ -5906,9 +5904,6 @@ EmitObject(ExclusiveContext *cx, BytecodeEmitter *bce, ParseNode *pn)
}
for (ParseNode *pn2 = pn->pn_head; pn2; pn2 = pn2->pn_next) {
if (!UpdateSourceCoordNotes(cx, bce, pn2->pn_pos.begin))
return false;
/* Emit an index for t[2] for later consumption by JSOP_INITELEM. */
ParseNode *pn3 = pn2->pn_left;
bool isIndex = false;
@ -6070,8 +6065,6 @@ EmitArray(ExclusiveContext *cx, BytecodeEmitter *bce, ParseNode *pn, uint32_t co
if (nspread && !EmitNumberOp(cx, 0, bce))
return false;
for (atomIndex = 0; pn2; atomIndex++, pn2 = pn2->pn_next) {
if (!UpdateSourceCoordNotes(cx, bce, pn2->pn_pos.begin))
return false;
if (pn2->isKind(PNK_ELISION)) {
if (Emit1(cx, bce, JSOP_HOLE) < 0)
return false;
@ -6379,8 +6372,6 @@ frontend::EmitTree(ExclusiveContext *cx, BytecodeEmitter *bce, ParseNode *pn)
case PNK_COMMA:
{
for (ParseNode *pn2 = pn->pn_head; ; pn2 = pn2->pn_next) {
if (!UpdateSourceCoordNotes(cx, bce, pn2->pn_pos.begin))
return false;
if (!EmitTree(cx, bce, pn2))
return false;
if (!pn2->pn_next)

Просмотреть файл

@ -8,7 +8,11 @@ dbg.onDebuggerStatement = function (frame) {
assertEq(exc.message, "diaf");
assertEq(exc.fileName, "fail");
assertEq(exc.lineNumber, 4);
assertEq(exc.columnNumber, 20);
// Arrant nonsense? Sure -- but different from lineNumber is all this
// test exists to verify. If you're the person to make column numbers
// actually work, change this accordingly.
assertEq(exc.columnNumber, 0);
return;
}
throw new Error("deleteProperty should throw");

Просмотреть файл

@ -16,4 +16,4 @@ Debugger(global).onDebuggerStatement = function (frame) {
global.log = '';
global.eval("function f(n) { for (var i = 0; i < n; ++i) log += '. '; log += '! '; } debugger;");
global.f(3);
assertEq(global.log, "25 32 44 . 39 32 44 . 39 32 44 . 39 32 57 ! 69 ");
assertEq(global.log, "21 32 44 . 39 32 44 . 39 32 44 . 39 32 57 ! 69 ");

Просмотреть файл

@ -1,21 +0,0 @@
// getColumnOffsets correctly places multiple variable declarations.
var global = newGlobal();
Debugger(global).onDebuggerStatement = function (frame) {
var script = frame.eval("f").return.script;
script.getAllColumnOffsets().forEach(function (offset) {
script.setBreakpoint(offset.offset, {
hit: function (frame) {
assertEq(offset.lineNumber, 1);
global.log += offset.columnNumber + " ";
}
});
});
};
global.log = '';
global.eval("function f(n){var w0,x1=3,y2=4,z3=9} debugger;");
global.f(3);
// Should have hit each variable declared.
assertEq(global.log, "18 21 26 31 33 ");

Просмотреть файл

@ -1,20 +0,0 @@
// getColumnOffsets correctly places comma separated expressions.
var global = newGlobal();
Debugger(global).onDebuggerStatement = function (frame) {
var script = frame.eval("f").return.script;
script.getAllColumnOffsets().forEach(function (offset) {
script.setBreakpoint(offset.offset, {
hit: function (frame) {
assertEq(offset.lineNumber, 1);
global.log += offset.columnNumber + " ";
}
});
});
};
global.log = '';
global.eval("function f(n){print(n),print(n),print(n)} debugger;");
global.f(3);
// Should hit each call that was separated by commas.
assertEq(global.log, "14 23 32 40 ");

Просмотреть файл

@ -1,20 +0,0 @@
// getColumnOffsets correctly places object properties.
var global = newGlobal();
Debugger(global).onDebuggerStatement = function (frame) {
var script = frame.eval("f").return.script;
script.getAllColumnOffsets().forEach(function (offset) {
script.setBreakpoint(offset.offset, {
hit: function (frame) {
assertEq(offset.lineNumber, 1);
global.log += offset.columnNumber + " ";
}
});
});
};
global.log = '';
global.eval("function f(n){var o={a:1,b:2,c:3}} debugger;");
global.f(3);
// Should hit each property in the object.
assertEq(global.log, "18 21 25 29 19 ");

Просмотреть файл

@ -1,20 +0,0 @@
// getColumnOffsets correctly places array properties.
var global = newGlobal();
Debugger(global).onDebuggerStatement = function (frame) {
var script = frame.eval("f").return.script;
script.getAllColumnOffsets().forEach(function (offset) {
script.setBreakpoint(offset.offset, {
hit: function (frame) {
assertEq(offset.lineNumber, 1);
global.log += offset.columnNumber + " ";
}
});
});
};
global.log = '';
global.eval("function f(n){var a=[1,2,3]} debugger;");
global.f(3);
// Should hit each item in the array.
assertEq(global.log, "18 21 23 25 19 ");