| // Copyright (C) 2014 the V8 project authors. All rights reserved. |
| // This code is governed by the BSD license found in the LICENSE file. |
| esid: sec-runtime-semantics-classdefinitionevaluation |
| The `this` value of a null-extending class is automatically initialized |
| The behavior under test was introduced in the "ES2017" revision of the |
| specification and conflicts with prior editions. |
| Runtime Semantics: ClassDefinitionEvaluation |
| 5. If ClassHeritageopt is not present, then |
| e. If superclass is null, then |
| i. Let protoParent be null. |
| ii. Let constructorParent be the intrinsic object %FunctionPrototype%. |
| 15. If ClassHeritageopt is present and protoParent is not null, then set F's |
| [[ConstructorKind]] internal slot to "derived". |
| 5. If kind is "base", then |
| a. Let thisArgument be ? OrdinaryCreateFromConstructor(newTarget, |
| assert.sameValue(instance instanceof C, true); |
| assert.sameValue(instance, thisVal); |