llvm
llvm copied to clipboard
unsafe use of pointer in LLVM.Core.Util.constVector
I found the following code in LLVM.Core.Util.constVector:
withArrayLen xs $ \ len ptr ->
return $ FFI.constVector ptr (fromIntegral len)
I think this won't work reliably, since "ptr" is only valid within withArrayLen and FFI.constVector might be run at any time after withArrayLen finished. I think it is wrong to define FFI.constVector without IO, since this suggests that you can run it somewhen in the future. This problem might be the cause for some crashes and it occurs at other places as well.