mirror of https://github.com/tc39/test262.git
25 lines
866 B
JavaScript
25 lines
866 B
JavaScript
// Copyright (C) 2019 Leo Balter. All rights reserved.
|
|
// This code is governed by the BSD license found in the LICENSE file.
|
|
|
|
/*---
|
|
esid: sec-rules-of-automatic-semicolon-insertion
|
|
description: ASI at the end of a do-while statement without a new line terminator
|
|
info: |
|
|
1. When, as the source text is parsed from left to right, a token (called the offending token) is
|
|
encountered that is not allowed by any production of the grammar, then a semicolon is
|
|
automatically inserted before the offending token if one or more of the following conditions is
|
|
true:
|
|
|
|
...
|
|
- The previous token is ) and the inserted semicolon would then be parsed as the terminating
|
|
semicolon of a do-while statement (13.7.2).
|
|
---*/
|
|
|
|
var x;
|
|
do break ; while (0) x = 42;
|
|
assert.sameValue(x, 42);
|
|
|
|
x = 0;
|
|
do do do ; while (x) while (x) while (x) x = 39;
|
|
assert.sameValue(x, 39);
|