Safely use unsafe `pointer` usages

Is there any way to be safe with respect to GC unallocating objects from under you in 0.6 when constructing a pointer that lives longer than just a ccall?

For example, is there any way to make the equivalent in 0.6 https://github.com/JuliaLang/julia/blob/15ca594696b5823a9f7b7c32dad6b75b0699e320/base/linalg/blas.jl#L316 more safe? In 0.7.0, the answer is to use https://docs.julialang.org/en/latest/devdocs/llvm/#Keeping-values-alive-in-the-absence-of-uses-1 . What about for 0.6?

No.