Nice overview of undefined behaviour in LLVM: https://www.cs.utah.edu/~regehr/llvm-ub.pdf (looks like poison may be removed entirely!)