Closed
Description
STR
fn main() {
let mut v = vec![];
write!(&v, "Hello world");
}
Output
$ time rustc write.rs
<std macros>:3:24: 3:14 error: cannot borrow immutable dereference of `&`-pointer as mutable
<std macros>:3 let dst = &mut *$dst;
[2] 2803 illegal hardware instruction (core dumped) rustc write.rs
rustc write.rs 58.66s user 4.81s system 99% cpu 1:03.86 total
Backtrace
#0 0x00007ffff7351560 in oom::h6671a0e79ac45df3RTa () from /usr/lib64/librustrt-4e7c5e5c.so
#1 0x00007ffff499c535 in ?? () from /usr/lib64/libsyntax-4e7c5e5c.so
#2 0x00007ffff4a3fd27 in ?? () from /usr/lib64/libsyntax-4e7c5e5c.so
#3 0x00007ffff4a3b083 in diagnostic::EmitterWriter.Emitter::emit::h8944016a574210b0lrG ()
from /usr/lib64/libsyntax-4e7c5e5c.so
#4 0x00007ffff4a398f9 in diagnostic::Handler::emit::hef6d94e096dac3f1F8F ()
from /usr/lib64/libsyntax-4e7c5e5c.so
#5 0x00007ffff4a0c3ed in diagnostic::SpanHandler::span_err::he4174115bd82cc5fEWF ()
from /usr/lib64/libsyntax-4e7c5e5c.so
#6 0x00007ffff5a77fea in middle::borrowck::BorrowckCtxt$LT$$x27a$C$$x20$x27tcx$GT$::report::h3050434306868883rEh () from /usr/lib64/librustc-4e7c5e5c.so
#7 0x00007ffff5a7d524 in middle::borrowck::gather_loans::GatherLoanCtxt$LT$$x27a$C$$x20$x27tcx$GT$.euv..Delegate$LT$$x27tcx$GT$::borrow::hd3a8e951ce2e3945bef () from /usr/lib64/librustc-4e7c5e5c.so
#8 0x00007ffff5a87421 in ?? () from /usr/lib64/librustc-4e7c5e5c.so
#9 0x00007ffff5a83d44 in ?? () from /usr/lib64/librustc-4e7c5e5c.so
#10 0x00007ffff5a830d0 in ?? () from /usr/lib64/librustc-4e7c5e5c.so
#11 0x00007ffff5a838d7 in ?? () from /usr/lib64/librustc-4e7c5e5c.so
#12 0x00007ffff5a876a9 in ?? () from /usr/lib64/librustc-4e7c5e5c.so
#13 0x00007ffff5a83091 in ?? () from /usr/lib64/librustc-4e7c5e5c.so
#14 0x00007ffff5a7ad31 in middle::borrowck::gather_loans::gather_loans_in_fn::ha2f120a3c6b6b70b96e ()
from /usr/lib64/librustc-4e7c5e5c.so
#15 0x00007ffff5a9c574 in ?? () from /usr/lib64/librustc-4e7c5e5c.so
#16 0x00007ffff5a9961d in ?? () from /usr/lib64/librustc-4e7c5e5c.so
#17 0x00007ffff5a9b666 in ?? () from /usr/lib64/librustc-4e7c5e5c.so
#18 0x00007ffff5a9a2f8 in ?? () from /usr/lib64/librustc-4e7c5e5c.so
#19 0x00007ffff5a99cc5 in middle::borrowck::check_crate::h7908f5f01a09671eOPg ()
from /usr/lib64/librustc-4e7c5e5c.so
#20 0x00007ffff76a9917 in ?? () from /usr/lib64/librustc_trans-4e7c5e5c.so
#21 0x00007ffff7840568 in driver::driver::phase_3_run_analysis_passes::he238813c217c3b94efS ()
from /usr/lib64/librustc_trans-4e7c5e5c.so
#22 0x00007ffff7833238 in driver::driver::compile_input::h117f94c1b348a398YVR ()
from /usr/lib64/librustc_trans-4e7c5e5c.so
#23 0x00007ffff78b7cd7 in ?? () from /usr/lib64/librustc_trans-4e7c5e5c.so
#24 0x00007ffff78b62fc in ?? () from /usr/lib64/librustc_trans-4e7c5e5c.so
#25 0x00007ffff76c2f78 in ?? () from /usr/lib64/librustc_trans-4e7c5e5c.so
#26 0x00007ffff76c2e83 in ?? () from /usr/lib64/librustc_trans-4e7c5e5c.so
#27 0x00007ffff7bd6be2 in ?? () from /usr/lib64/libnative-4e7c5e5c.so
#28 0x00007ffff7390fec in ?? () from /usr/lib64/librustrt-4e7c5e5c.so
#29 0x00007ffff7390fd6 in rust_try () from /usr/lib64/librustrt-4e7c5e5c.so
#30 0x00007ffff733f843 in unwind::try::h03ead95328113b2fIZc () from /usr/lib64/librustrt-4e7c5e5c.so
#31 0x00007ffff733f70c in task::Task::run::hed7dc0cf620a0172y5b () from /usr/lib64/librustrt-4e7c5e5c.so
#32 0x00007ffff7bd69e7 in ?? () from /usr/lib64/libnative-4e7c5e5c.so
#33 0x00007ffff7340f35 in ?? () from /usr/lib64/librustrt-4e7c5e5c.so
#34 0x00007ffff1e0e294 in start_thread () from /lib64/libpthread.so.0
#35 0x00007ffff70181ed in clone () from /lib64/libc.so.6
Version
Can anyone reproduce? I find this bizarre...
cc @alexcrichton @jakub- @sfackler