Closed
Description
I tried this command:
$ echo "fn main() {}" | rustc -Zno-link -
I expected to see this happen: An .rlink
file is generated.
Instead, this happened:
thread 'rustc' panicked at 'cannot encode `DefIndex` with `rustc_serialize::json::Encoder`', /rustc/381b445ff5751f9f39ec672b623372dff09c276e/compiler/rustc_span/src/def_id.rs:135:9
stack backtrace:
0: rust_begin_unwind
at /rustc/381b445ff5751f9f39ec672b623372dff09c276e/library/std/src/panicking.rs:483
1: std::panicking::begin_panic_fmt
at /rustc/381b445ff5751f9f39ec672b623372dff09c276e/library/std/src/panicking.rs:437
2: <rustc_span::def_id::DefIndex as rustc_serialize::serialize::Encodable<E>>::encode
3: <rustc_serialize::json::Encoder as rustc_serialize::serialize::Encoder>::emit_struct
4: <rustc_serialize::json::Encoder as rustc_serialize::serialize::Encoder>::emit_struct
5: <rustc_serialize::json::Encoder as rustc_serialize::serialize::Encoder>::emit_seq
6: <rustc_serialize::json::Encoder as rustc_serialize::serialize::Encoder>::emit_map
7: <rustc_serialize::json::Encoder as rustc_serialize::serialize::Encoder>::emit_struct
8: <rustc_serialize::json::Encoder as rustc_serialize::serialize::Encoder>::emit_struct
9: <rustc_codegen_llvm::LlvmCodegenBackend as rustc_codegen_ssa::traits::backend::CodegenBackend>::link
10: rustc_interface::queries::Linker::link
11: rustc_span::with_source_map
12: rustc_interface::interface::create_compiler_and_run
13: scoped_tls::ScopedKey<T>::set
Meta
rustc --version --verbose
:
rustc 1.48.0-nightly (381b445ff 2020-09-29)
binary: rustc
commit-hash: 381b445ff5751f9f39ec672b623372dff09c276e
commit-date: 2020-09-29
host: x86_64-unknown-linux-gnu
release: 1.48.0-nightly
LLVM version: 11.0
Originally posted by @bjorn3 in #77795 (comment)
cc @0dvictor (original implementer of -Zno-link