1/* Copyright JS Foundation and other contributors, http://js.foundation
2 *
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
6 *
7 *     http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
14 */
15
16// TODO: enable this test when super keyword is supported for normal functions
17/*
18var console = { assert : assert };
19
20class C1 {
21  f () {
22    return 5;
23  }
24}
25
26class C2 extends C1 {
27  f () {
28    assert (super.f () === 5);
29
30    class G {
31      g () {
32        assert (super.f === undefined);
33        assert (super.toString () === "[object Object]");
34        var a = super.valueOf ();
35        try {
36          a ();
37          assert (false);
38        } catch (e) {
39          assert (e instanceof TypeError);
40        }
41      }
42
43      constructor () {
44        // Test to overwrite the current lit-object
45        console.assert (Object.getPrototypeOf (this) === G.prototype);
46
47        try {
48          eval ("super ()");
49          assert (false);
50        } catch (e) {
51          assert (e instanceof SyntaxError);
52        }
53      }
54    }
55
56    var g = new G ();
57    g.g ();
58  }
59}
60
61(new C2).f ();
62*/
63