| 
						
						
							
								
							
						
						
					 | 
					@ -33,7 +33,8 @@ struct flat_object_map { | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					        auto& value         = iter->second; | 
					 | 
					 | 
					        auto& value         = iter->second; | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					        if (is_new) { | 
					 | 
					 | 
					        if (is_new) { | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					            value.refcount       = 1; | 
					 | 
					 | 
					            value.refcount       = 1; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					            value.object_pointer = mi_aligned_alloc(alignof(V), sizeof(V)); | 
					 | 
					 | 
					            V* new_value         = static_cast<V*>(mi_aligned_alloc(alignof(V), sizeof(V))); | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					            value.object_pointer = make_pointer_wrapper(new_value); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					            if constexpr (std::is_same_v<V, K>) | 
					 | 
					 | 
					            if constexpr (std::is_same_v<V, K>) | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					                *value.object_pointer = key; | 
					 | 
					 | 
					                *value.object_pointer = key; | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					            else | 
					 | 
					 | 
					            else | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
					
  |