use middle::trans::common::*;
use middle::trans::debuginfo;
use middle::trans::expr;
-use middle::trans::type_of;
use middle::ty;
use util::ppaux::Repr;
fn str_slice_arg<'a>(bcx: &'a Block<'a>, s: InternedString) -> ValueRef {
let ccx = bcx.ccx();
- let t = ty::mk_str_slice(bcx.tcx(), ty::ReStatic, ast::MutImmutable);
let s = C_str_slice(ccx, s);
let slot = alloca(bcx, val_ty(s), "__temp");
Store(bcx, s, slot);
-
- // The type of C_str_slice is { i8*, i64 }, but the type of the &str is
- // %str_slice, so we do a bitcast here to the right type.
- BitCast(bcx, slot, type_of::type_of(ccx, t).ptr_to())
+ slot
}
pub fn trans_fail<'a>(