summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/class/checkreturn-for-of-arrow.js
blob: 4358bb1778968ff9fa24a2ca806cfd37dc1f2221 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
var iter = {
  [Symbol.iterator]() { return this; },
  next() { return {done: false}; },
  return() {
    // Calls |super()|.
    this.f();

    return {done: true};
  },
};

class C extends class {} {
  constructor() {
    iter.f = () => super();

    for (var k of iter) {
      return;
    }
  }
}

function test() {
  for (var i = 0; i < 100; ++i) {
    // No error.
    new C();
  }
}

test();