| 
				
				
					
						
					
				
				
				 | 
			
			 | 
			
			@ -1153,6 +1153,22 @@ struct elem ink_make_native(struct context* ctx, int type, void* ptr) { | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
				return ink_make_native_unsafe(ctx, type, ptr, 0); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			} | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			void ink_clean_routines(struct context* ctx) { | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    int i, j; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    struct elem null; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    null.value = 0; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    null.type = INK_INTEGER; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    for(i = 0; i < ctx->routines_top; ++i) { | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        if(ctx->routines[i].panic == INK_ROUTINE_CAN_REUSE) { | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			            for (j = 0; j < ctx->routines[i].top; ++j) { | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                ctx->routines[i].stack[j] = null; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			            } | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			            ctx->routines[i].top = 0; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        } | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    } | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			} | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			void ink_gc(struct context* ctx) { | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    int i, j, k; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
				int marked; | 
			
		
		
	
	
		
			
				| 
				
					
						
					
				
				
				
				 | 
			
			 | 
			
			
 |