mirror of
				https://github.com/RGBCube/serenity
				synced 2025-10-31 16:32:45 +00:00 
			
		
		
		
	LibJS: Fix this values in arrow functions
Also added a large this value test (and strict variant) to ensure this values have no regressions.
This commit is contained in:
		
							parent
							
								
									151447bdf7
								
							
						
					
					
						commit
						e1573991a3
					
				
					 4 changed files with 889 additions and 4 deletions
				
			
		|  | @ -132,6 +132,7 @@ FunctionEnvironment* OrdinaryFunctionObject::create_environment(FunctionObject& | |||
|     auto* environment = heap().allocate<FunctionEnvironment>(global_object(), m_environment, variables); | ||||
|     environment->set_function_object(function_being_invoked); | ||||
|     if (m_is_arrow_function) { | ||||
|         environment->set_this_binding_status(FunctionEnvironment::ThisBindingStatus::Lexical); | ||||
|         if (is<FunctionEnvironment>(m_environment)) | ||||
|             environment->set_new_target(static_cast<FunctionEnvironment*>(m_environment)->new_target()); | ||||
|     } | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 davidot
						davidot