diff --git a/src/llvm_wrap.rs b/src/llvm_wrap.rs index 148577e..010698f 100644 --- a/src/llvm_wrap.rs +++ b/src/llvm_wrap.rs @@ -195,9 +195,9 @@ pub fn GetParams(function: LLVMValueRef) -> Vec { let size = CountParams(function); unsafe { let mut container = Vec::with_capacity(size); - let p = container.as_mut_ptr(); - core::LLVMGetParams(function, p); - Vec::from_raw_parts(p, size, size) + container.set_len(size); + core::LLVMGetParams(function, container.as_mut_ptr()); + container } } @@ -244,9 +244,9 @@ pub fn GetBasicBlocks(function: LLVMValueRef) -> Vec { let size = CountBasicBlocks(function); unsafe { let mut container = Vec::with_capacity(size); - let p = container.as_mut_ptr(); - core::LLVMGetBasicBlocks(function, p); - Vec::from_raw_parts(p, size, size) + container.set_len(size); + core::LLVMGetBasicBlocks(function, container.as_mut_ptr()); + container } }