/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ /* This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ //----------------------------------------------------------------------------- var BUGNUMBER = 321757; var summary = 'Compound assignment operators should not bind LHS'; var actual = ''; var expect = 'pass'; printBugNumber(BUGNUMBER); printStatus (summary); try { foo += 1; actual = "fail"; } catch (e) { actual = "pass"; } reportCompare(expect, actual, summary + ': +='); try { foo -= 1; actual = "fail"; } catch (e) { actual = "pass"; } reportCompare(expect, actual, summary + ': -='); try { foo *= 1; actual = "fail"; } catch (e) { actual = "pass"; } reportCompare(expect, actual, summary + ': *='); try { foo /= 1; actual = "fail"; } catch (e) { actual = "pass"; } reportCompare(expect, actual, summary + ': /='); try { foo %= 1; actual = "fail"; } catch (e) { actual = "pass"; } reportCompare(expect, actual, summary + ': %='); try { foo <<= 1; actual = "fail"; } catch (e) { actual = "pass"; } reportCompare(expect, actual, summary + ': <<='); try { foo >>= 1; actual = "fail"; } catch (e) { actual = "pass"; } reportCompare(expect, actual, summary + ': >>='); try { foo >>>= 1; actual = "fail"; } catch (e) { actual = "pass"; } reportCompare(expect, actual, summary + ': >>>=');