static-init-scope-lex-derived.js (738B)
1 // Copyright (C) 2021 the V8 project authors. All rights reserved. 2 // This code is governed by the BSD license found in the LICENSE file. 3 /*--- 4 esid: sec-runtime-semantics-classstaticblockdefinitionevaluation 5 description: Derivation of environment record for lexically-scoped bindings 6 info: | 7 ClassStaticBlock : static { ClassStaticBlockBody } 8 9 1. Let lex be the running execution context's LexicalEnvironment. 10 2. Let privateScope be the running execution context's PrivateEnvironment. 11 3. Let body be OrdinaryFunctionCreate(Method, « », ClassStaticBlockBody, lex, privateScope). 12 features: [class-static-block] 13 ---*/ 14 15 let probe; 16 17 class C { 18 static { 19 probe = C; 20 } 21 } 22 23 assert.sameValue(probe, C); 24 25 reportCompare(0, 0);