michael@0: // |reftest| skip-if(Android) michael@0: /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ michael@0: michael@0: /* michael@0: * Any copyright is dedicated to the Public Domain. michael@0: * http://creativecommons.org/licenses/publicdomain/ michael@0: */ michael@0: michael@0: /* In strict mode, a 'let' block may not bind 'eval' or 'arguments'. */ michael@0: assertEq(testLenientAndStrict('let (eval=1) {}', michael@0: parsesSuccessfully, michael@0: parseRaisesException(SyntaxError)), michael@0: true); michael@0: assertEq(testLenientAndStrict('let ([eval]=1) {}', michael@0: parsesSuccessfully, michael@0: parseRaisesException(SyntaxError)), michael@0: true); michael@0: assertEq(testLenientAndStrict('let ({x:eval}=1) {}', michael@0: parsesSuccessfully, michael@0: parseRaisesException(SyntaxError)), michael@0: true); michael@0: assertEq(testLenientAndStrict('let (arguments=1) {}', michael@0: parsesSuccessfully, michael@0: parseRaisesException(SyntaxError)), michael@0: true); michael@0: assertEq(testLenientAndStrict('let ([arguments]=1) {}', michael@0: parsesSuccessfully, michael@0: parseRaisesException(SyntaxError)), michael@0: true); michael@0: assertEq(testLenientAndStrict('let ({x:arguments}=1) {}', michael@0: parsesSuccessfully, michael@0: parseRaisesException(SyntaxError)), michael@0: true); michael@0: michael@0: reportCompare(true, true);