tweaks to fuzzer
- labels to start at 10000 - fix for-in expression - fix `getLabel()` returning `undefined`
This commit is contained in:
parent
b002aaed87
commit
c0c976a47c
|
|
@ -352,7 +352,7 @@ function createLabel(canBreak, canContinue) {
|
||||||
label = canBreak[canBreak.length - 1] + 1;
|
label = canBreak[canBreak.length - 1] + 1;
|
||||||
} else {
|
} else {
|
||||||
canBreak = canBreak ? [ "" ] : [];
|
canBreak = canBreak ? [ "" ] : [];
|
||||||
label = 1;
|
label = 10000;
|
||||||
}
|
}
|
||||||
canBreak.push(label);
|
canBreak.push(label);
|
||||||
if (Array.isArray(canContinue)) {
|
if (Array.isArray(canContinue)) {
|
||||||
|
|
@ -370,6 +370,7 @@ function createLabel(canBreak, canContinue) {
|
||||||
}
|
}
|
||||||
|
|
||||||
function getLabel(label) {
|
function getLabel(label) {
|
||||||
|
if (!Array.isArray(label)) return "";
|
||||||
label = label[rng(label.length)];
|
label = label[rng(label.length)];
|
||||||
return label && " L" + label;
|
return label && " L" + label;
|
||||||
}
|
}
|
||||||
|
|
@ -408,7 +409,7 @@ function createStatement(recurmax, canThrow, canBreak, canContinue, cannotReturn
|
||||||
if (rng(5) > 1) {
|
if (rng(5) > 1) {
|
||||||
optElementVar = 'var ' + createVarName(MANDATORY) + ' = expr' + loop + '[key' + loop + ']; ';
|
optElementVar = 'var ' + createVarName(MANDATORY) + ' = expr' + loop + '[key' + loop + ']; ';
|
||||||
}
|
}
|
||||||
return label.target + ' for (var key' + loop + ' in ' + createExpression(recurmax, COMMA_OK, stmtDepth, canThrow) + ') {' + optElementVar + createStatement(recurmax, canThrow, label.break, label.continue, cannotReturn, stmtDepth) + '}';
|
return '{var expr' + loop + ' = ' + createExpression(recurmax, COMMA_OK, stmtDepth, canThrow) + '; ' + label.target + ' for (var key' + loop + ' in expr' + loop + ') {' + optElementVar + createStatement(recurmax, canThrow, label.break, label.continue, cannotReturn, stmtDepth) + '}}';
|
||||||
case STMT_SEMI:
|
case STMT_SEMI:
|
||||||
return ';';
|
return ';';
|
||||||
case STMT_EXPR:
|
case STMT_EXPR:
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user