mirror of
				https://github.com/tc39/test262.git
				synced 2025-10-25 17:53:53 +02:00 
			
		
		
		
	
		
			
				
	
	
		
			31 lines
		
	
	
		
			938 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			31 lines
		
	
	
		
			938 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| // Copyright (C) 2016 the V8 project authors. All rights reserved.
 | |
| // This code is governed by the BSD license found in the LICENSE file.
 | |
| /*---
 | |
| es6id: 23.4.1.1
 | |
| esid: sec-weakset-iterable
 | |
| description: Default [[Prototype]] value derived from realm of the newTarget
 | |
| info: |
 | |
|     [...]
 | |
|     2. Let set be ? OrdinaryCreateFromConstructor(NewTarget,
 | |
|        "%WeakSetPrototype%", « [[WeakSetData]] »).
 | |
|     [...]
 | |
| 
 | |
|     9.1.14 GetPrototypeFromConstructor
 | |
| 
 | |
|     [...]
 | |
|     3. Let proto be ? Get(constructor, "prototype").
 | |
|     4. If Type(proto) is not Object, then
 | |
|        a. Let realm be ? GetFunctionRealm(constructor).
 | |
|        b. Let proto be realm's intrinsic object named intrinsicDefaultProto.
 | |
|     [...]
 | |
| features: [cross-realm, Reflect]
 | |
| ---*/
 | |
| 
 | |
| var other = $262.createRealm().global;
 | |
| var C = new other.Function();
 | |
| C.prototype = null;
 | |
| 
 | |
| var o = Reflect.construct(WeakSet, [], C);
 | |
| 
 | |
| assert.sameValue(Object.getPrototypeOf(o), other.WeakSet.prototype);
 |