about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorBrian Koropoff <bkoropoff@gmail.com>2014-09-29 19:58:32 -0700
committerBrian Koropoff <bkoropoff@gmail.com>2014-09-30 20:07:09 -0700
commit293b57701b7bcdd88e44ce8f671511ba35cac13e (patch)
treefa8529552b6ccf5fe5775087827e3585dfed68ac /src
parent0c66796525cef24d4bcc0cd2d0626c2e61a4627f (diff)
downloadrust-293b57701b7bcdd88e44ce8f671511ba35cac13e.tar.gz
rust-293b57701b7bcdd88e44ce8f671511ba35cac13e.zip
Add missing case for pointer -> int when translating constant cast expressions
Closes issue #17458
Diffstat (limited to 'src')
-rw-r--r--src/librustc/middle/trans/consts.rs3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/librustc/middle/trans/consts.rs b/src/librustc/middle/trans/consts.rs
index d39fe4a1e70..456ff69e0ec 100644
--- a/src/librustc/middle/trans/consts.rs
+++ b/src/librustc/middle/trans/consts.rs
@@ -547,6 +547,9 @@ fn const_expr_unadjusted(cx: &CrateContext, e: &ast::Expr,
               (expr::cast_integral, expr::cast_pointer) => {
                 llvm::LLVMConstIntToPtr(v, llty.to_ref())
               }
+              (expr::cast_pointer, expr::cast_integral) => {
+                llvm::LLVMConstPtrToInt(v, llty.to_ref())
+              }
               _ => {
                 cx.sess().impossible_case(e.span,
                                           "bad combination of types for cast")