Better handling of void returns in llvm