forked from n3tael/labast
		
	Fix function signature in #native...
This commit is contained in:
		
							parent
							
								
									7223b995a3
								
							
						
					
					
						commit
						751971576e
					
				@ -42,7 +42,7 @@ pub fn native(stack: &mut Stack, arg: String) {
 | 
			
		||||
        let module = Library::new([libpref, arg, libsuf].join("")).unwrap();
 | 
			
		||||
        // C libraries should use 
 | 
			
		||||
        // void (*labashka)(unsigned short (*pop)(void), void (*push)(unsigned short), size_t (*len)(void), size_t max_size);
 | 
			
		||||
        let func: Symbol<unsafe extern "C" fn(extern fn() -> u16, extern fn(u16) -> i32, extern fn () -> usize, usize)> = module.get(b"labashka").unwrap();
 | 
			
		||||
        let func: Symbol<unsafe extern "C" fn(extern fn() -> u16, extern fn(u16), extern fn() -> usize, usize)> = module.get(b"labashka").unwrap();
 | 
			
		||||
        func(stack_pop_callback,stack_push_callback,stack_len_callback, stack.memory.size());
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -4,7 +4,7 @@
 | 
			
		||||
// rustc --crate-type cdylib native_test.rs -o native_test.dll
 | 
			
		||||
 | 
			
		||||
#[no_mangle]
 | 
			
		||||
unsafe extern "C" fn labashka(pop: extern fn() -> u16, push: extern fn(u16) -> i32, len: extern fn () -> usize, max: usize) {
 | 
			
		||||
unsafe extern "C" fn labashka(pop: extern fn() -> u16, push: extern fn(u16), len: extern fn () -> usize, max: usize) {
 | 
			
		||||
    println!("At {}, there's {}.", len(), pop());
 | 
			
		||||
    push(12);
 | 
			
		||||
    println!("Maximum size is {}.", max);
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user