generate non-directive "use strict"

This commit is contained in:
alexlamsl 2017-04-23 05:17:06 +08:00
parent 4cda977910
commit 0a259f74e4

View File

@ -450,7 +450,7 @@ function createStatement(recurmax, canThrow, canBreak, canContinue, cannotReturn
} }
return '{var expr' + loop + ' = ' + createExpression(recurmax, COMMA_OK, stmtDepth, canThrow) + '; ' + label.target + ' for (var key' + loop + ' in expr' + loop + ') {' + optElementVar + createStatement(recurmax, canThrow, canBreak, canContinue, 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, canBreak, canContinue, cannotReturn, stmtDepth) + '}}';
case STMT_SEMI: case STMT_SEMI:
return ';'; return use_strict && rng(20) === 0 ? '"use strict";' : ';';
case STMT_EXPR: case STMT_EXPR:
return createExpression(recurmax, COMMA_OK, stmtDepth, canThrow) + ';'; return createExpression(recurmax, COMMA_OK, stmtDepth, canThrow) + ';';
case STMT_SWITCH: case STMT_SWITCH: