зеркало из https://github.com/mozilla/pjs.git
JSOPTION_ANONFUNFIX should be set in js shell (5595555, r=cdleary).
This commit is contained in:
Родитель
524b7dd76b
Коммит
8140dc23ab
|
@ -5248,7 +5248,7 @@ NewGlobalObject(JSContext *cx)
|
|||
}
|
||||
|
||||
int
|
||||
shell(JSContext *cx, int argc, char **argv, char **envp)
|
||||
Shell(JSContext *cx, int argc, char **argv, char **envp)
|
||||
{
|
||||
JSAutoRequest ar(cx);
|
||||
|
||||
|
@ -5411,9 +5411,10 @@ main(int argc, char **argv, char **envp)
|
|||
if (!cx)
|
||||
return 1;
|
||||
|
||||
JS_SetOptions(cx, JS_GetOptions(cx) | JSOPTION_ANONFUNFIX);
|
||||
JS_SetGCParameterForThread(cx, JSGC_MAX_CODE_CACHE_BYTES, 16 * 1024 * 1024);
|
||||
|
||||
result = shell(cx, argc, argv, envp);
|
||||
result = Shell(cx, argc, argv, envp);
|
||||
|
||||
DestroyContext(cx, true);
|
||||
|
||||
|
|
|
@ -6,11 +6,11 @@ function g(foo) {
|
|||
}
|
||||
|
||||
var makegen = eval("\n\
|
||||
function(b) {\n\
|
||||
(function(b) {\n\
|
||||
var h = \n\
|
||||
eval(\"new function() { yield print(b) }\" ); \n\
|
||||
return h\n\
|
||||
}\n\
|
||||
})\n\
|
||||
");
|
||||
|
||||
g(makegen());
|
||||
|
|
|
@ -23,10 +23,10 @@ function testmath(funcname, args, expected) {
|
|||
// Unless we eval here, the call to funcname won't get traced.
|
||||
// FUNCNAME="Infinity/Math.abs" and cases like that happen to
|
||||
// parse, too, in a twisted way.
|
||||
var mapfunc = eval("function(a) {\n"
|
||||
var mapfunc = eval("(function(a) {\n"
|
||||
+ " for (var i = 0; i < a.length; i++)\n"
|
||||
+ " a[i] = " + funcname + "(" + actuals +");\n"
|
||||
+ " }\n");
|
||||
+ " })\n");
|
||||
|
||||
// To prevent the compiler from doing constant folding, produce an
|
||||
// array to pass to mapfunc that contains enough dummy
|
||||
|
|
|
@ -4,7 +4,7 @@ f = function() {
|
|||
x = yield
|
||||
}
|
||||
rv = f()
|
||||
for (a in rv) function() {}
|
||||
for (a in rv) (function() {})
|
||||
x = Proxy.create((function() {
|
||||
return {
|
||||
defineProperty: gc
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// |trace-test| error: TypeError
|
||||
|
||||
(eval("\
|
||||
function () {\
|
||||
(function () {\
|
||||
for (var[x] = function(){} in \
|
||||
(function m(a) {\
|
||||
if (a < 1) {\
|
||||
|
@ -13,5 +13,5 @@
|
|||
(eval(\"\"))\
|
||||
)\
|
||||
([])\
|
||||
}\
|
||||
})\
|
||||
"))()
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
for (j = 0; j < 1; j++) {
|
||||
var f = eval("\
|
||||
function() {\
|
||||
(function() {\
|
||||
for (var a = 0; a < 8; ++a) {\
|
||||
if (a % 3 == 2) {\
|
||||
eval(\"\
|
||||
|
@ -11,7 +11,7 @@ for (j = 0; j < 1; j++) {
|
|||
}\
|
||||
gc()\
|
||||
}\
|
||||
}\
|
||||
})\
|
||||
");
|
||||
f()
|
||||
}
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
for (a in (eval("\
|
||||
function() {\
|
||||
(function() {\
|
||||
return function() {\
|
||||
yield ((function() {\
|
||||
return d\
|
||||
})())\
|
||||
} ();\
|
||||
var d = []\
|
||||
}\
|
||||
})\
|
||||
"))());
|
||||
|
|
|
@ -2,14 +2,14 @@ function m() {
|
|||
var d = 73;
|
||||
|
||||
return (eval("\n\
|
||||
function() {\n\
|
||||
(function() {\n\
|
||||
return function() {\n\
|
||||
yield ((function() {\n\
|
||||
print(d);\n\
|
||||
return d\n\
|
||||
})())\n\
|
||||
} ();\n\
|
||||
}\n\
|
||||
})\n\
|
||||
"))();
|
||||
}
|
||||
|
||||
|
|
|
@ -3,11 +3,11 @@ expected = 'undefined,';
|
|||
|
||||
function f() {
|
||||
(eval("\
|
||||
function () {\
|
||||
(function () {\
|
||||
for (var z = 0; z < 2; ++z) {\
|
||||
x = ''\
|
||||
}\
|
||||
}\
|
||||
})\
|
||||
"))();
|
||||
}
|
||||
__defineSetter__("x", eval)
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
(function() {
|
||||
for each(let z in [new String(''), new String('q'), new String('')]) {
|
||||
if (uneval() < z) function(){}
|
||||
if (uneval() < z) (function(){})
|
||||
}
|
||||
})()
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
// |trace-test| error: TypeError
|
||||
function f() {
|
||||
eval("function() \n{\nfor(x in[])\n{}\n}");
|
||||
eval("(function() \n{\nfor(x in[])\n{}\n})");
|
||||
("")()
|
||||
}
|
||||
f()
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
for (let a in [0])
|
||||
a = e
|
||||
for (let a in [0])
|
||||
function () {
|
||||
(function () {
|
||||
a
|
||||
}
|
||||
})
|
||||
|
||||
|
|
|
@ -3,7 +3,7 @@ function g() {
|
|||
var rv = (function() {
|
||||
this << 1
|
||||
})()
|
||||
if (a) function() {}
|
||||
if (a) (function() {})
|
||||
}
|
||||
g()
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
// |trace-test| error: <x/> is not a function
|
||||
function() { (e)
|
||||
function f() { (e)
|
||||
} (x = Proxy.createFunction((function(x) {
|
||||
return {
|
||||
get: function(r, b) {
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
function()[function() function() function() function() function() function() {}]
|
||||
(function()[function() function() function() function() function() function() {}]);
|
||||
foo = [{
|
||||
text: "(function(){if(d){(1)}})",
|
||||
s: function() {},
|
||||
|
@ -46,9 +46,9 @@ foo = [{
|
|||
}
|
||||
} ());
|
||||
s = [function() function() function() function() function() function() {}]
|
||||
[function() function() function() function() {}]
|
||||
function() { [function() function() {}] }
|
||||
function() {}
|
||||
[function() function() function() function() {}];
|
||||
(function() { [function() function() {}] });
|
||||
(function() {});
|
||||
(eval("\
|
||||
(function(){\
|
||||
for each(d in[\
|
||||
|
@ -57,4 +57,4 @@ function() {}
|
|||
[].filter(new Function,gczeal(2))\
|
||||
}\
|
||||
})\
|
||||
"))()
|
||||
"))();
|
||||
|
|
Загрузка…
Ссылка в новой задаче