diff options
| author | Oliver Schneider <github35764891676564198441@oli-obk.de> | 2018-05-24 10:45:05 +0200 |
|---|---|---|
| committer | Oliver Schneider <github35764891676564198441@oli-obk.de> | 2018-05-24 20:49:38 +0200 |
| commit | ca8c27e1c1832f9cf40c5f5c7b7a1e8fa89231ac (patch) | |
| tree | 53b7ccd40e46c4f8b0822ccf886d20c60c316661 /src/librustc_codegen_llvm | |
| parent | bc3ba91737c654d8b0d61b4fb86bd9cb5a1475de (diff) | |
| download | rust-ca8c27e1c1832f9cf40c5f5c7b7a1e8fa89231ac.tar.gz rust-ca8c27e1c1832f9cf40c5f5c7b7a1e8fa89231ac.zip | |
Ensure llvm doesn't trigger an assert for crazy transmutes
Diffstat (limited to 'src/librustc_codegen_llvm')
| -rw-r--r-- | src/librustc_codegen_llvm/mir/constant.rs | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/src/librustc_codegen_llvm/mir/constant.rs b/src/librustc_codegen_llvm/mir/constant.rs index ef0bc3ed330..1fa3fb79e24 100644 --- a/src/librustc_codegen_llvm/mir/constant.rs +++ b/src/librustc_codegen_llvm/mir/constant.rs @@ -70,11 +70,8 @@ pub fn scalar_to_llvm(cx: &CodegenCx, &C_usize(cx, ptr.offset.bytes()), 1, ) }; - if layout.value != layout::Pointer { - unsafe { llvm::LLVMConstPtrToInt(llval, llty.to_ref()) } - } else { - consts::bitcast(llval, llty) - } + let llval = unsafe { llvm::LLVMConstPtrToInt(llval, llty.to_ref()) }; + consts::bitcast(llval, llty) } } } |
