Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

rustc overflowed stack with serde #67817

Closed
WaffleLapkin opened this issue Jan 2, 2020 · 3 comments
Closed

rustc overflowed stack with serde #67817

WaffleLapkin opened this issue Jan 2, 2020 · 3 comments
Labels
C-bug Category: This is a bug. I-crash Issue: The compiler crashes (SIGSEGV, SIGABRT, etc). Use I-ICE instead when the compiler panics. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.

Comments

@WaffleLapkin
Copy link
Member

I'm not sure is it a bug of rustc or serde, but this simple code:

use serde::{Serialize, Serializer};

enum E {
    Alpha(i32),
}

impl Serialize for E {
    fn serialize<S>(&self, _: S) -> Result<S::Ok, S::Error>
    where
        S: Serializer
    {
        #[derive(Serialize)]
        enum __E<'life> {
            Alpha { Alpha: &'life i32 },
        }

        panic!()
    }
}
# Cargo.toml
[package]
name = "rustc_overflow_stack"
version = "0.1.0"
edition = "2018"

[dependencies]
serde = { version = "1.0.104", features = ["derive"] }

Causes compiler (stable 1.40.0 and nightly 2019-12-29) to overflow its own stack:

thread 'rustc' has overflowed its stack
fatal runtime error: stack overflow
error: could not compile `playground`.

Caused by:
  process didn't exit successfully: `rustc --crate-name playground --edition=2018 src/lib.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type lib --emit=dep-info,metadata,link -C codegen-units=1 -C debuginfo=2 -C metadata=6b557ca0894c80a0 -C extra-filename=-6b557ca0894c80a0 --out-dir /playground/target/debug/deps -L dependency=/playground/target/debug/deps --extern adler32=/playground/target/debug/deps/libadler32-fc1af88888e7eed5.rmeta --extern aho_corasick=/playground/target/debug/deps/libaho_corasick-291d8af6d0c50821.rmeta --extern alga=/playground/target/debug/deps/libalga-9df02be586c0a4b3.rmeta --extern ansi_term_0_11_0=/playground/target/debug/deps/libansi_term-3f00dcfd09e993c4.rmeta --extern ansi_term=/playground/target/debug/deps/libansi_term-83f743192e10199a.rmeta --extern antidote=/playground/target/debug/deps/libantidote-cdb54295b32fe430.rmeta --extern anyhow=/playground/target/debug/deps/libanyhow-5befe39a0b38ce7e.rmeta --extern approx=/playground/target/debug/deps/libapprox-00624a0167d609e5.rmeta --extern arc_swap=/playground/target/debug/deps/libarc_swap-fbf0a70723eb9efb.rmeta --extern arrayref=/playground/target/debug/deps/libarrayref-a45a55a2066c0a2d.rmeta --extern arrayvec=/playground/target/debug/deps/libarrayvec-d988c53c02ed623f.rmeta --extern atty=/playground/target/debug/deps/libatty-3b74e204ed43e10b.rmeta --extern autocfg=/playground/target/debug/deps/libautocfg-8d78f00435942666.rmeta --extern backtrace=/playground/target/debug/deps/libbacktrace-c4219e7935014347.rmeta --extern backtrace_sys=/playground/target/debug/deps/libbacktrace_sys-17bfdf6a24554577.rmeta --extern base64_0_6_0=/playground/target/debug/deps/libbase64-99f56751fe367e06.rmeta --extern base64_0_10_1=/playground/target/debug/deps/libbase64-5942a16c6232059a.rmeta --extern base64=/playground/target/debug/deps/libbase64-15fc489ec246a23b.rmeta --extern bit_set=/playground/target/debug/deps/libbit_set-d59f7da40dcea45b.rmeta --extern bit_vec=/playground/target/debug/deps/libbit_vec-76a3942410de483a.rmeta --extern bitflags=/playground/target/debug/deps/libbitflags-72b1f30098a9230a.rmeta --extern block_buffer=/playground/target/debug/deps/libblock_buffer-0793b79a4f646f92.rmeta --extern bstr=/playground/target/debug/deps/libbstr-46f0c9309a36aae4.rmeta --extern bumpalo=/playground/target/debug/deps/libbumpalo-aa13462a52434d4f.rmeta --extern byte_tools=/playground/target/debug/deps/libbyte_tools-a67095aa34714616.rmeta --extern byteorder=/playground/target/debug/deps/libbyteorder-8a6bec4898b66e4c.rmeta --extern bytes_0_4_12=/playground/target/debug/deps/libbytes-1ae544ed7a7896b1.rmeta --extern bytes=/playground/target/debug/deps/libbytes-b5a3363c47e27576.rmeta --extern c2_chacha=/playground/target/debug/deps/libc2_chacha-31cb0e70ec6b0f3b.rmeta --extern cc=/playground/target/debug/deps/libcc-9f3450461eaccf41.rmeta --extern cfg_if=/playground/target/debug/deps/libcfg_if-a84129ea7c03d3f9.rmeta --extern chrono=/playground/target/debug/deps/libchrono-56cdc3917cf2dee7.rmeta --extern clap=/playground/target/debug/deps/libclap-b3e60ba2c5ed2d20.rmeta --extern cloudabi=/playground/target/debug/deps/libcloudabi-14b2c2b74ef8da9b.rmeta --extern color_quant=/playground/target/debug/deps/libcolor_quant-fbab0d20ea7cee8c.rmeta --extern constant_time_eq=/playground/target/debug/deps/libconstant_time_eq-99f92d35e2641aa1.rmeta --extern cookie=/playground/target/debug/deps/libcookie-c0eeb24b26ebe109.rmeta --extern cookie_store=/playground/target/debug/deps/libcookie_store-4c736c8d5f6c7a81.rmeta --extern crc32fast=/playground/target/debug/deps/libcrc32fast-0ce5a16753edfe5d.rmeta --extern crossbeam=/playground/target/debug/deps/libcrossbeam-ccb5b7e211a7a7ef.rmeta --extern crossbeam_channel=/playground/target/debug/deps/libcrossbeam_channel-a05e9fbefb36bc67.rmeta --extern crossbeam_deque=/playground/target/debug/deps/libcrossbeam_deque-5a541069f0f6d3ab.rmeta --extern crossbeam_epoch=/playground/target/debug/deps/libcrossbeam_epoch-fc108b4d5fc6c803.rmeta --extern crossbeam_queue_0_1_2=/playground/target/debug/deps/libcrossbeam_queue-ed04fc2af4c3ae05.rmeta --extern crossbeam_queue=/playground/target/debug/deps/libcrossbeam_queue-ffa721862479ed82.rmeta --extern crossbeam_utils_0_6_6=/playground/target/debug/deps/libcrossbeam_utils-7f32e86e8d088368.rmeta --extern crossbeam_utils=/playground/target/debug/deps/libcrossbeam_utils-609afbe8e5e80e88.rmeta --extern crypto_mac=/playground/target/debug/deps/libcrypto_mac-0414987c9e35718b.rmeta --extern csv=/playground/target/debug/deps/libcsv-6237740924c3f42f.rmeta --extern csv_core=/playground/target/debug/deps/libcsv_core-53ad82a6b941748b.rmeta --extern data_encoding=/playground/target/debug/deps/libdata_encoding-7c3efd6de0f7ae59.rmeta --extern deflate=/playground/target/debug/deps/libdeflate-0be7d6cf7d55b3a0.rmeta --extern digest=/playground/target/debug/deps/libdigest-85b2bd3b59535949.rmeta --extern dtoa=/playground/target/debug/deps/libdtoa-84116a4cb6725913.rmeta --extern either=/playground/target/debug/deps/libeither-91dcb4608c4b9ef6.rmeta --extern encoding_rs=/playground/target/debug/deps/libencoding_rs-2571a3cbc23d2758.rmeta --extern env_logger=/playground/target/debug/deps/libenv_logger-4d6013d5389f02e0.rmeta --extern error_chain=/playground/target/debug/deps/liberror_chain-d3789b323fa57c03.rmeta --extern failure=/playground/target/debug/deps/libfailure-16161919d08f8116.rmeta --extern failure_derive=/playground/target/debug/deps/libfailure_derive-7b0703a1642808ec.so --extern fake_simd=/playground/target/debug/deps/libfake_simd-31bd679f28d9f569.rmeta --extern fallible_iterator_0_1_6=/playground/target/debug/deps/libfallible_iterator-b5281f53751767db.rmeta --extern fallible_iterator=/playground/target/debug/deps/libfallible_iterator-95951e2c924e7a3b.rmeta --extern fallible_streaming_iterator=/playground/target/debug/deps/libfallible_streaming_iterator-6f5d4991b005f71e.rmeta --extern filetime=/playground/target/debug/deps/libfiletime-d8a58889d5505697.rmeta --extern fixedbitset=/playground/target/debug/deps/libfixedbitset-ac27ee5fc96d5c69.rmeta --extern flate2=/playground/target/debug/deps/libflate2-0bc709688eb5ff25.rmeta --extern fnv=/playground/target/debug/deps/libfnv-5e7ac5d211c6d23b.rmeta --extern foreign_types=/playground/target/debug/deps/libforeign_types-7bb7d891266fdb29.rmeta --extern foreign_types_shared=/playground/target/debug/deps/libforeign_types_shared-1fca5b176cf4a6e8.rmeta --extern fuchsia_cprng=/playground/target/debug/deps/libfuchsia_cprng-6e496932855a8fa6.rmeta --extern fuchsia_zircon=/playground/target/debug/deps/libfuchsia_zircon-ff0138c31450a227.rmeta --extern fuchsia_zircon_sys=/playground/target/debug/deps/libfuchsia_zircon_sys-96ff853690f5fac5.rmeta --extern futf=/playground/target/debug/deps/libfutf-3cc8cd2529dba250.rmeta --extern futures_0_1_29=/playground/target/debug/deps/libfutures-84222d7cb268e2b4.rmeta --extern futures=/playground/target/debug/deps/libfutures-f79b116287e1e9ac.rmeta --extern futures_channel=/playground/target/debug/deps/libfutures_channel-82472a922b496b03.rmeta --extern futures_core=/playground/target/debug/deps/libfutures_core-3f06fa6f112a2e25.rmeta --extern futures_cpupool=/playground/target/debug/deps/libfutures_cpupool-a9d933dec3974994.rmeta --extern futures_executor=/playground/target/debug/deps/libfutures_executor-91180c9df482600e.rmeta --extern futures_io=/playground/target/debug/deps/libfutures_io-0c2c2541f93cd89f.rmeta --extern futures_macro=/playground/target/debug/deps/libfutures_macro-61a9648aee9838bb.so --extern futures_sink=/playground/target/debug/deps/libfutures_sink-0599874b536bbf30.rmeta --extern futures_task=/playground/target/debug/deps/libfutures_task-d601d2cda46493b0.rmeta --extern futures_util=/playground/target/debug/deps/libfutures_util-5cf69b37231ea6d6.rmeta --extern gcc=/playground/target/debug/deps/libgcc-000e00f840bc136c.rmeta --extern generic_array_0_9_0=/playground/target/debug/deps/libgeneric_array-31bae0932c9d91d9.rmeta --extern generic_array=/playground/target/debug/deps/libgeneric_array-4209636b493ddc74.rmeta --extern getrandom=/playground/target/debug/deps/libgetrandom-423bda85138164e9.rmeta --extern gif=/playground/target/debug/deps/libgif-8e55861f9d886037.rmeta --extern glob=/playground/target/debug/deps/libglob-6ac9387848f3981c.rmeta --extern h2_0_1_26=/playground/target/debug/deps/libh2-681028e124fc7ab4.rmeta --extern h2=/playground/target/debug/deps/libh2-509b4a9de8c02aaf.rmeta --extern heck=/playground/target/debug/deps/libheck-f05f4bfc798a852c.rmeta --extern hermit_abi=/playground/target/debug/deps/libhermit_abi-fc783ba7f8033058.rmeta --extern hex=/playground/target/debug/deps/libhex-801b4b5f78f5573e.rmeta --extern hmac=/playground/target/debug/deps/libhmac-c5021e8e11411960.rmeta --extern html5ever=/playground/target/debug/deps/libhtml5ever-daf7e0643dd06ccd.rmeta --extern http_0_1_21=/playground/target/debug/deps/libhttp-f8a10f2e7b92f5c1.rmeta --extern http=/playground/target/debug/deps/libhttp-6939580255877d84.rmeta --extern http_body_0_1_0=/playground/target/debug/deps/libhttp_body-9bb57ade9694fb75.rmeta --extern http_body=/playground/target/debug/deps/libhttp_body-b98fcf46ec07f5e0.rmeta --extern httparse=/playground/target/debug/deps/libhttparse-7cfe899318e5b702.rmeta --extern humantime=/playground/target/debug/deps/libhumantime-8c184eda2ae631b8.rmeta --extern hyper_0_12_35=/playground/target/debug/deps/libhyper-b5cf02bd7c1d1d42.rmeta --extern hyper=/playground/target/debug/deps/libhyper-c03f3796c18e0829.rmeta --extern hyper_tls=/playground/target/debug/deps/libhyper_tls-26941070dca758f7.rmeta --extern idna_0_1_5=/playground/target/debug/deps/libidna-667486d2d5861ee7.rmeta --extern idna=/playground/target/debug/deps/libidna-783856396095e7b1.rmeta --extern image=/playground/target/debug/deps/libimage-83dc5d1c156bdfa8.rmeta --extern indexmap=/playground/target/debug/deps/libindexmap-e3b0ce0cf0ea57dc.rmeta --extern inflate=/playground/target/debug/deps/libinflate-c6473b237bfca56f.rmeta --extern iovec=/playground/target/debug/deps/libiovec-98c8db6ccf9b7864.rmeta --extern itertools=/playground/target/debug/deps/libitertools-0d13aec157e0ad75.rmeta --extern itoa=/playground/target/debug/deps/libitoa-537ec896d77c00ea.rmeta --extern jpeg_decoder=/playground/target/debug/deps/libjpeg_decoder-1599f703aea39c0a.rmeta --extern js_sys=/playground/target/debug/deps/libjs_sys-223457b29fa071ad.rmeta --extern kernel32=/playground/target/debug/deps/libkernel32-69c1809246aa9589.rmeta --extern lazy_static=/playground/target/debug/deps/liblazy_static-5cab71c6096c8912.rmeta --extern lazycell=/playground/target/debug/deps/liblazycell-868356fd79d48c44.rmeta --extern libc=/playground/target/debug/deps/liblibc-3d6a33e5195562e1.rmeta --extern libm=/playground/target/debug/deps/liblibm-767427ee57d4162d.rmeta --extern libsqlite3_sys=/playground/target/debug/deps/liblibsqlite3_sys-637a3aa386435675.rmeta --extern linked_hash_map=/playground/target/debug/deps/liblinked_hash_map-03b398a9fe3e3677.rmeta --extern lock_api=/playground/target/debug/deps/liblock_api-5b30d350195a6990.rmeta --extern log=/playground/target/debug/deps/liblog-b8a4cc8c09831e82.rmeta --extern log_mdc=/playground/target/debug/deps/liblog_mdc-888f13dd0cc14deb.rmeta --extern log4rs=/playground/target/debug/deps/liblog4rs-1bb241d0233d689e.rmeta --extern lru_cache=/playground/target/debug/deps/liblru_cache-ff6d7ec5e163ef08.rmeta --extern lzw=/playground/target/debug/deps/liblzw-dda2e2df2321a30e.rmeta --extern mac=/playground/target/debug/deps/libmac-c6d861bf310dca4e.rmeta --extern markup5ever=/playground/target/debug/deps/libmarkup5ever-320719583d2a7983.rmeta --extern matches=/playground/target/debug/deps/libmatches-fd41e54496b572be.rmeta --extern matrixmultiply=/playground/target/debug/deps/libmatrixmultiply-eab0b31b2fdde6c1.rmeta --extern maybe_uninit=/playground/target/debug/deps/libmaybe_uninit-b588c08b000ca16e.rmeta --extern md5=/playground/target/debug/deps/libmd5-e0653511ed4d775d.rmeta --extern memchr_1_0_2=/playground/target/debug/deps/libmemchr-ff0c3cd1b169df15.rmeta --extern memchr=/playground/target/debug/deps/libmemchr-0e720d0253499661.rmeta --extern memmap=/playground/target/debug/deps/libmemmap-c18fd8d30d404037.rmeta --extern memoffset=/playground/target/debug/deps/libmemoffset-ab7be6103790428f.rmeta --extern mime=/playground/target/debug/deps/libmime-1fc1a52afa717077.rmeta --extern mime_guess=/playground/target/debug/deps/libmime_guess-5aafebc165a6b2f4.rmeta --extern miniz_oxide=/playground/target/debug/deps/libminiz_oxide-097ffa7e425f6b55.rmeta --extern mio=/playground/target/debug/deps/libmio-8c4ff44f49681d50.rmeta --extern miow=/playground/target/debug/deps/libmiow-2a30d0c01fd1fe13.rmeta --extern nalgebra=/playground/target/debug/deps/libnalgebra-b3d95ec691b33b76.rmeta --extern native_tls=/playground/target/debug/deps/libnative_tls-4985799457224616.rmeta --extern ndarray=/playground/target/debug/deps/libndarray-b137d3a742839d84.rmeta --extern net2=/playground/target/debug/deps/libnet2-cf8f76ce5b8d2999.rmeta --extern debug_unreachable=/playground/target/debug/deps/libdebug_unreachable-0a82c8d55a1f2c58.rmeta --extern nodrop=/playground/target/debug/deps/libnodrop-73c20de23d033702.rmeta --extern nom=/playground/target/debug/deps/libnom-f21543ecc7fee0a6.rmeta --extern num=/playground/target/debug/deps/libnum-6010ea44e875e23a.rmeta --extern num_bigint=/playground/target/debug/deps/libnum_bigint-ee18e80d135c1643.rmeta --extern num_complex=/playground/target/debug/deps/libnum_complex-f822e5522598ad28.rmeta --extern num_derive=/playground/target/debug/deps/libnum_derive-19f22e56be53b439.so --extern num_integer=/playground/target/debug/deps/libnum_integer-691bcabe53ac2e95.rmeta --extern num_iter=/playground/target/debug/deps/libnum_iter-da94e2062692daaf.rmeta --extern num_rational=/playground/target/debug/deps/libnum_rational-9ff550ebe959c2ea.rmeta --extern num_traits=/playground/target/debug/deps/libnum_traits-b85078a4f45c3b83.rmeta --extern num_cpus=/playground/target/debug/deps/libnum_cpus-7efce91e52edcca6.rmeta --extern openssl=/playground/target/debug/deps/libopenssl-c1c818db8e026b3c.rmeta --extern openssl_probe=/playground/target/debug/deps/libopenssl_probe-c0a905519321e951.rmeta --extern openssl_sys=/playground/target/debug/deps/libopenssl_sys-0338053a5ae7c897.rmeta --extern ordered_float=/playground/target/debug/deps/libordered_float-757ada60eac8f8b2.rmeta --extern ordermap=/playground/target/debug/deps/libordermap-b7e7ac001467d14b.rmeta --extern parking_lot_0_9_0=/playground/target/debug/deps/libparking_lot-8c34a3a26b041a66.rmeta --extern parking_lot=/playground/target/debug/deps/libparking_lot-e46c5c574ee856db.rmeta --extern parking_lot_core_0_6_2=/playground/target/debug/deps/libparking_lot_core-43fb661987f75be1.rmeta --extern parking_lot_core=/playground/target/debug/deps/libparking_lot_core-723bb41ff6b8889e.rmeta --extern percent_encoding_1_0_1=/playground/target/debug/deps/libpercent_encoding-dffb07e6f175901c.rmeta --extern percent_encoding=/playground/target/debug/deps/libpercent_encoding-18f86507a88f785f.rmeta --extern petgraph=/playground/target/debug/deps/libpetgraph-3618e109e42ede63.rmeta --extern phf=/playground/target/debug/deps/libphf-d7749a24f0c5ddb6.rmeta --extern phf_codegen=/playground/target/debug/deps/libphf_codegen-17b26deda0a1298d.rmeta --extern phf_generator=/playground/target/debug/deps/libphf_generator-2d4905cdc69c5cb0.rmeta --extern phf_shared=/playground/target/debug/deps/libphf_shared-c4443e2c6d3fac3c.rmeta --extern pin_project=/playground/target/debug/deps/libpin_project-dc28f7e1965d7c9f.rmeta --extern pin_project_internal=/playground/target/debug/deps/libpin_project_internal-0ccdb179a9c7646f.so --extern pin_project_lite=/playground/target/debug/deps/libpin_project_lite-340dd31c7d0c2892.rmeta --extern pin_utils=/playground/target/debug/deps/libpin_utils-9afc4d07486fed49.rmeta --extern pkg_config=/playground/target/debug/deps/libpkg_config-28d05d9c20789bac.rmeta --extern png=/playground/target/debug/deps/libpng-cebdf4f0036321ba.rmeta --extern postgres=/playground/target/debug/deps/libpostgres-e08fe0a9eb500dee.rmeta --extern postgres_protocol=/playground/target/debug/deps/libpostgres_protocol-71b7e6fa03187d84.rmeta --extern postgres_shared=/playground/target/debug/deps/libpostgres_shared-d84fa4e53f292040.rmeta --extern ppv_lite86=/playground/target/debug/deps/libppv_lite86-67b9295c1f682504.rmeta --extern precomputed_hash=/playground/target/debug/deps/libprecomputed_hash-80d3b96bf8ec93f5.rmeta --extern proc_macro_hack=/playground/target/debug/deps/libproc_macro_hack-7474014cb431a419.so --extern proc_macro_nested=/playground/target/debug/deps/libproc_macro_nested-3b9284b161dc1687.rmeta --extern proc_macro2_0_4_30=/playground/target/debug/deps/libproc_macro2-1562f3da1cf6cff3.rmeta --extern proc_macro2=/playground/target/debug/deps/libproc_macro2-0ec111cfdf4fc64d.rmeta --extern publicsuffix=/playground/target/debug/deps/libpublicsuffix-c1f67975b5f380ab.rmeta --extern quick_error=/playground/target/debug/deps/libquick_error-4f77b2bcac702f7c.rmeta --extern quote_0_6_13=/playground/target/debug/deps/libquote-b2a584275e6f2897.rmeta --extern quote=/playground/target/debug/deps/libquote-e163c764a9609f46.rmeta --extern rand_0_3_23=/playground/target/debug/deps/librand-dd8de9f14856738d.rmeta --extern rand_0_4_6=/playground/target/debug/deps/librand-2a7db86e585a3dca.rmeta --extern rand_0_6_5=/playground/target/debug/deps/librand-6b9fde2e7190fd52.rmeta --extern rand=/playground/target/debug/deps/librand-4eedb3cfeae0fe3f.rmeta --extern rand_chacha_0_1_1=/playground/target/debug/deps/librand_chacha-91f0572a36bf937d.rmeta --extern rand_chacha=/playground/target/debug/deps/librand_chacha-6602f6616b13e125.rmeta --extern rand_core_0_3_1=/playground/target/debug/deps/librand_core-1178895f04e2b422.rmeta --extern rand_core_0_4_2=/playground/target/debug/deps/librand_core-d146bfa665bb5adf.rmeta --extern rand_core=/playground/target/debug/deps/librand_core-a74d2465c24a1b76.rmeta --extern rand_distr=/playground/target/debug/deps/librand_distr-533b693252273fe0.rmeta --extern rand_hc_0_1_0=/playground/target/debug/deps/librand_hc-197c7795ae968f0c.rmeta --extern rand_hc=/playground/target/debug/deps/librand_hc-348e87c0316ee70b.rmeta --extern rand_isaac=/playground/target/debug/deps/librand_isaac-2c51d2cb2a0f5870.rmeta --extern rand_jitter=/playground/target/debug/deps/librand_jitter-9ab060a5ce4525e9.rmeta --extern rand_os=/playground/target/debug/deps/librand_os-83659595f34db852.rmeta --extern rand_pcg=/playground/target/debug/deps/librand_pcg-7672bd45ea8c89d5.rmeta --extern rand_xorshift=/playground/target/debug/deps/librand_xorshift-33b1f3d97c104889.rmeta --extern rawpointer=/playground/target/debug/deps/librawpointer-6b33d5201ab90bfb.rmeta --extern rayon=/playground/target/debug/deps/librayon-29f23a0e62c12a6a.rmeta --extern rayon_core=/playground/target/debug/deps/librayon_core-28ecd01cc0be0720.rmeta --extern rdrand=/playground/target/debug/deps/librdrand-55bcb6cedd7fb500.rmeta --extern regex=/playground/target/debug/deps/libregex-2c2dbfde416cb472.rmeta --extern regex_automata=/playground/target/debug/deps/libregex_automata-92b3ce6b32d1a8c1.rmeta --extern regex_syntax=/playground/target/debug/deps/libregex_syntax-4983700fd9217654.rmeta --extern remove_dir_all=/playground/target/debug/deps/libremove_dir_all-0d0f3cd72c196099.rmeta --extern reqwest=/playground/target/debug/deps/libreqwest-6bb10793207ec12c.rmeta --extern ring=/playground/target/debug/deps/libring-e71a1cadcca3a46b.rmeta --extern rusqlite=/playground/target/debug/deps/librusqlite-0b458cbcf640e363.rmeta --extern rustc_demangle=/playground/target/debug/deps/librustc_demangle-0b6d578215a51c49.rmeta --extern rustc_serialize=/playground/target/debug/deps/librustc_serialize-6dd939fef23b03d3.rmeta --extern rustc_version=/playground/target/debug/deps/librustc_version-a13042e72cda473d.rmeta --extern ryu=/playground/target/debug/deps/libryu-3e8a617a91ef4cca.rmeta --extern safemem=/playground/target/debug/deps/libsafemem-68f927792e4ca3f9.rmeta --extern same_file=/playground/target/debug/deps/libsame_file-8645a8682aac3b7d.rmeta --extern schannel=/playground/target/debug/deps/libschannel-bb20fcb04c064d92.rmeta --extern scoped_threadpool=/playground/target/debug/deps/libscoped_threadpool-d1d5d97874d5fd7c.rmeta --extern scopeguard=/playground/target/debug/deps/libscopeguard-ae03591b44367fcd.rmeta --extern select=/playground/target/debug/deps/libselect-05724c28c162fc37.rmeta --extern semver=/playground/target/debug/deps/libsemver-931f566bddd5329f.rmeta --extern semver_parser_0_7_0=/playground/target/debug/deps/libsemver_parser-be25aa90005af3bf.rmeta --extern semver_parser=/playground/target/debug/deps/libsemver_parser-07fde45f9f1b8cb2.rmeta --extern serde=/playground/target/debug/deps/libserde-54ed906c3dba397f.rmeta --extern serde_value=/playground/target/debug/deps/libserde_value-584d298c8f64ee65.rmeta --extern serde_derive=/playground/target/debug/deps/libserde_derive-48da8925d32f65b1.so --extern serde_json=/playground/target/debug/deps/libserde_json-8e2f8d51652285c8.rmeta --extern serde_urlencoded=/playground/target/debug/deps/libserde_urlencoded-b5889a6a7d91c356.rmeta --extern serde_yaml=/playground/target/debug/deps/libserde_yaml-ec7d1b1b7ba91ba4.rmeta --extern sha2=/playground/target/debug/deps/libsha2-d90ff66d8f80478f.rmeta --extern siphasher=/playground/target/debug/deps/libsiphasher-67585de5b7f46fb2.rmeta --extern slab=/playground/target/debug/deps/libslab-e59fcc46350b18bd.rmeta --extern smallvec_0_6_13=/playground/target/debug/deps/libsmallvec-c2c05ff22974a4f5.rmeta --extern smallvec=/playground/target/debug/deps/libsmallvec-8f6886f352e5f347.rmeta --extern socket2=/playground/target/debug/deps/libsocket2-097c25fdeee7d14f.rmeta --extern sourcefile=/playground/target/debug/deps/libsourcefile-5330a5b2b5bcf186.rmeta --extern spin=/playground/target/debug/deps/libspin-9f1e02979d00d80d.rmeta --extern string=/playground/target/debug/deps/libstring-eb71c1b561e4756c.rmeta --extern string_cache=/playground/target/debug/deps/libstring_cache-14c8d3a957c8f7c0.rmeta --extern string_cache_codegen=/playground/target/debug/deps/libstring_cache_codegen-3c770c028d17feac.rmeta --extern string_cache_shared=/playground/target/debug/deps/libstring_cache_shared-ad8c1c68cd8364e0.rmeta --extern stringprep=/playground/target/debug/deps/libstringprep-ffe70a9e15f6b621.rmeta --extern strsim_0_8_0=/playground/target/debug/deps/libstrsim-2db9ad3f2594c260.rmeta --extern strsim=/playground/target/debug/deps/libstrsim-98c4b71aed18d623.rmeta --extern syn_0_15_44=/playground/target/debug/deps/libsyn-d4bd59c30f8f7e21.rmeta --extern syn=/playground/target/debug/deps/libsyn-08bec0fb8ee7cb9a.rmeta --extern synstructure=/playground/target/debug/deps/libsynstructure-eb0485c534f8f0e2.rmeta --extern tar=/playground/target/debug/deps/libtar-311904c81f0f24c5.rmeta --extern tempfile=/playground/target/debug/deps/libtempfile-b92c36b2c185f5c5.rmeta --extern tendril=/playground/target/debug/deps/libtendril-8dd1a9d287be22c0.rmeta --extern termcolor=/playground/target/debug/deps/libtermcolor-63e16cdb22653862.rmeta --extern textwrap=/playground/target/debug/deps/libtextwrap-e0d385a1229a4605.rmeta --extern thread_id=/playground/target/debug/deps/libthread_id-eb9ebdae8ea7b88c.rmeta --extern thread_local_0_3_6=/playground/target/debug/deps/libthread_local-515ecc70185b54ff.rmeta --extern thread_local=/playground/target/debug/deps/libthread_local-61920b92744b536d.rmeta --extern threadpool=/playground/target/debug/deps/libthreadpool-f9318ac31635c3ac.rmeta --extern tiff=/playground/target/debug/deps/libtiff-b89005302e6fc8ee.rmeta --extern time=/playground/target/debug/deps/libtime-49ad56dc8b45b649.rmeta --extern tokio_0_1_22=/playground/target/debug/deps/libtokio-929e27ebe98e1afd.rmeta --extern tokio=/playground/target/debug/deps/libtokio-dbd406771071703c.rmeta --extern tokio_buf=/playground/target/debug/deps/libtokio_buf-541622ca10535b1a.rmeta --extern tokio_current_thread=/playground/target/debug/deps/libtokio_current_thread-9778fcb3a71eb70a.rmeta --extern tokio_executor=/playground/target/debug/deps/libtokio_executor-24b063ee21895551.rmeta --extern tokio_io=/playground/target/debug/deps/libtokio_io-1b10dd45fd11a012.rmeta --extern tokio_reactor=/playground/target/debug/deps/libtokio_reactor-52410e59b7e69b41.rmeta --extern tokio_sync=/playground/target/debug/deps/libtokio_sync-179b8a760da1f93d.rmeta --extern tokio_tcp=/playground/target/debug/deps/libtokio_tcp-e2e889f7beee13a6.rmeta --extern tokio_threadpool=/playground/target/debug/deps/libtokio_threadpool-876d38a5f69d6787.rmeta --extern tokio_timer=/playground/target/debug/deps/libtokio_timer-2dc81c07ae82d4e9.rmeta --extern tokio_util=/playground/target/debug/deps/libtokio_util-20a716a25dde6b2b.rmeta --extern toml=/playground/target/debug/deps/libtoml-a2deec2b4b321056.rmeta --extern tower_service=/playground/target/debug/deps/libtower_service-75b3cb1234ec3dad.rmeta --extern traitobject=/playground/target/debug/deps/libtraitobject-42f34b687712b03b.rmeta --extern try_lock=/playground/target/debug/deps/libtry_lock-dd4f0b4453ad8419.rmeta --extern try_from=/playground/target/debug/deps/libtry_from-d46d464f2fc295ad.rmeta --extern typemap=/playground/target/debug/deps/libtypemap-f3992f3341d76e32.rmeta --extern typenum=/playground/target/debug/deps/libtypenum-0b31c3ddc0fc2d4c.rmeta --extern ucd_util=/playground/target/debug/deps/libucd_util-9a0cc586089c7828.rmeta --extern unicase=/playground/target/debug/deps/libunicase-446d9b75aca0eb6e.rmeta --extern unicode_bidi=/playground/target/debug/deps/libunicode_bidi-27d647963fa7f169.rmeta --extern unicode_normalization=/playground/target/debug/deps/libunicode_normalization-5a201328a2696689.rmeta --extern unicode_segmentation=/playground/target/debug/deps/libunicode_segmentation-71237ae80bca03d2.rmeta --extern unicode_width=/playground/target/debug/deps/libunicode_width-42231cfe6682ac5b.rmeta --extern unicode_xid_0_1_0=/playground/target/debug/deps/libunicode_xid-f38b955b72e74c75.rmeta --extern unicode_xid=/playground/target/debug/deps/libunicode_xid-678d9d00bde3897c.rmeta --extern unreachable=/playground/target/debug/deps/libunreachable-a2bcb5a60f891586.rmeta --extern unsafe_any=/playground/target/debug/deps/libunsafe_any-d275705e20b39cd0.rmeta --extern untrusted=/playground/target/debug/deps/libuntrusted-9a3bf9abd1b84c9d.rmeta --extern url_1_7_2=/playground/target/debug/deps/liburl-33dd97ceedfaceb9.rmeta --extern url=/playground/target/debug/deps/liburl-ff0d6de53cee0255.rmeta --extern utf8=/playground/target/debug/deps/libutf8-62ff7679b889cdca.rmeta --extern utf8_ranges=/playground/target/debug/deps/libutf8_ranges-271e17d02067558a.rmeta --extern uuid_0_7_4=/playground/target/debug/deps/libuuid-dece446901e1e6bf.rmeta --extern uuid=/playground/target/debug/deps/libuuid-f9b7fcbfd3ca487a.rmeta --extern vcpkg=/playground/target/debug/deps/libvcpkg-30d145eb0edd3e01.rmeta --extern vec_map=/playground/target/debug/deps/libvec_map-d8d62da5b50ac703.rmeta --extern version_check_0_1_5=/playground/target/debug/deps/libversion_check-1933772b9ab5341a.rmeta --extern version_check=/playground/target/debug/deps/libversion_check-9c3c2e04e799ad0e.rmeta --extern void=/playground/target/debug/deps/libvoid-8f2168c0ae11b63c.rmeta --extern walkdir=/playground/target/debug/deps/libwalkdir-709efa8e3337129f.rmeta --extern want_0_2_0=/playground/target/debug/deps/libwant-36601ff185bbf768.rmeta --extern want=/playground/target/debug/deps/libwant-f202c7d0434668d6.rmeta --extern wasi=/playground/target/debug/deps/libwasi-14eb9900fef40a94.rmeta --extern wasm_bindgen=/playground/target/debug/deps/libwasm_bindgen-3c976ce068358d80.rmeta --extern wasm_bindgen_backend=/playground/target/debug/deps/libwasm_bindgen_backend-2439dab2f302eaf9.rmeta --extern wasm_bindgen_macro=/playground/target/debug/deps/libwasm_bindgen_macro-81d5c6cbff7a4e50.so --extern wasm_bindgen_macro_support=/playground/target/debug/deps/libwasm_bindgen_macro_support-01c980a5007304fb.rmeta --extern wasm_bindgen_shared=/playground/target/debug/deps/libwasm_bindgen_shared-2d4ba99a1618618b.rmeta --extern wasm_bindgen_webidl=/playground/target/debug/deps/libwasm_bindgen_webidl-f26f4960b412d7ea.rmeta --extern web_sys=/playground/target/debug/deps/libweb_sys-9c666421d4c860da.rmeta --extern weedle=/playground/target/debug/deps/libweedle-3fb15eea07b300ab.rmeta --extern winapi_0_2_8=/playground/target/debug/deps/libwinapi-ecb211332ff06886.rmeta --extern winapi=/playground/target/debug/deps/libwinapi-e1b998963b8e0fa0.rmeta --extern build=/playground/target/debug/deps/libbuild-ba750f6c3f4dcadd.rmeta --extern winapi_i686_pc_windows_gnu=/playground/target/debug/deps/libwinapi_i686_pc_windows_gnu-f4d381e9cdd013f7.rmeta --extern winapi_util=/playground/target/debug/deps/libwinapi_util-a1564d64d77e4e7a.rmeta --extern winapi_x86_64_pc_windows_gnu=/playground/target/debug/deps/libwinapi_x86_64_pc_windows_gnu-47d8539dc375add7.rmeta --extern wincolor=/playground/target/debug/deps/libwincolor-f6a49abecc39f7ea.rmeta --extern ws2_32=/playground/target/debug/deps/libws2_32-686478d3827cc1fd.rmeta --extern xattr=/playground/target/debug/deps/libxattr-34012dbd40aecca4.rmeta --extern yaml_rust=/playground/target/debug/deps/libyaml_rust-ff984a99359001df.rmeta -L native=/playground/target/debug/build/backtrace-sys-96471bf8beed50d9/out -L native=/playground/target/debug/build/ring-16a9cba0bc6c5ca1/out` (signal: 6, SIGABRT: process abort signal)

(playground)

@jonas-schievink jonas-schievink added C-bug Category: This is a bug. I-crash Issue: The compiler crashes (SIGSEGV, SIGABRT, etc). Use I-ICE instead when the compiler panics. I-nominated T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. labels Jan 2, 2020
@Aaron1011
Copy link
Member

Partial stack trace:

#6  0x00007fe57a7439d3 in rustc::ty::print::pretty::PrettyPrinter::try_print_visible_def_path_recur () from /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-17772cbea8f58f8c.so
#7  0x00007fe57a74b510 in <rustc::ty::print::pretty::FmtPrinter<F> as rustc::ty::print::Printer>::print_def_path () from /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-17772cbea8f58f8c.so
#8  0x00007fe57a752312 in rustc::ty::print::Printer::default_print_def_path () from /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-17772cbea8f58f8c.so
#9  0x00007fe57a74b5ad in <rustc::ty::print::pretty::FmtPrinter<F> as rustc::ty::print::Printer>::print_def_path () from /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-17772cbea8f58f8c.so
#10 0x00007fe57a7483f4 in rustc::ty::print::pretty::PrettyPrinter::pretty_print_type () from /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-17772cbea8f58f8c.so
#11 0x00007fe57a74eb49 in <rustc::ty::print::pretty::FmtPrinter<F> as rustc::ty::print::pretty::PrettyPrinter>::generic_delimiters ()
   from /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-17772cbea8f58f8c.so
#12 0x00007fe57a752a42 in rustc::ty::print::Printer::default_print_def_path () from /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-17772cbea8f58f8c.so
#13 0x00007fe57a74b5ad in <rustc::ty::print::pretty::FmtPrinter<F> as rustc::ty::print::Printer>::print_def_path () from /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-17772cbea8f58f8c.so
#14 0x00007fe57a752312 in rustc::ty::print::Printer::default_print_def_path () from /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-17772cbea8f58f8c.so
#15 0x00007fe57a74b5ad in <rustc::ty::print::pretty::FmtPrinter<F> as rustc::ty::print::Printer>::print_def_path () from /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-17772cbea8f58f8c.so
#16 0x00007fe57a752312 in rustc::ty::print::Printer::default_print_def_path () from /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-17772cbea8f58f8c.so
#17 0x00007fe57a74b5ad in <rustc::ty::print::pretty::FmtPrinter<F> as rustc::ty::print::Printer>::print_def_path () from /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-17772cbea8f58f8c.so
#18 0x00007fe57a752312 in rustc::ty::print::Printer::default_print_def_path () from /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-17772cbea8f58f8c.so
#19 0x00007fe57a74b5ad in <rustc::ty::print::pretty::FmtPrinter<F> as rustc::ty::print::Printer>::print_def_path () from /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-17772cbea8f58f8c.so
#20 0x00007fe57a743bac in rustc::ty::print::pretty::PrettyPrinter::try_print_visible_def_path_recur () from /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-17772cbea8f58f8c.so
#21 0x00007fe57a743ab5 in rustc::ty::print::pretty::PrettyPrinter::try_print_visible_def_path_recur () from /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-17772cbea8f58f8c.so
#22 0x00007fe57a74b510 in <rustc::ty::print::pretty::FmtPrinter<F> as rustc::ty::print::Printer>::print_def_path () from /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-17772cbea8f58f8c.so
#23 0x00007fe57a752373 in rustc::ty::print::Printer::default_print_def_path () from /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-17772cbea8f58f8c.so
#24 0x00007fe57a74b5ad in <rustc::ty::print::pretty::FmtPrinter<F> as rustc::ty::print::Printer>::print_def_path () from /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-17772cbea8f58f8c.so
#25 0x00007fe57a74ec81 in <rustc::ty::print::pretty::FmtPrinter<F> as rustc::ty::print::pretty::PrettyPrinter>::generic_delimiters ()
   from /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-17772cbea8f58f8c.so
#26 0x00007fe57a752a42 in rustc::ty::print::Printer::default_print_def_path () from /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-17772cbea8f58f8c.so
#27 0x00007fe57a74b5ad in <rustc::ty::print::pretty::FmtPrinter<F> as rustc::ty::print::Printer>::print_def_path () from /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-17772cbea8f58f8c.so
#28 0x00007fe57a752312 in rustc::ty::print::Printer::default_print_def_path () from /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-17772cbea8f58f8c.so
#29 0x00007fe57a74b5ad in <rustc::ty::print::pretty::FmtPrinter<F> as rustc::ty::print::Printer>::print_def_path () from /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-17772cbea8f58f8c.so
#30 0x00007fe57a752312 in rustc::ty::print::Printer::default_print_def_path () from /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-17772cbea8f58f8c.so
#31 0x00007fe57a74b5ad in <rustc::ty::print::pretty::FmtPrinter<F> as rustc::ty::print::Printer>::print_def_path () from /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-17772cbea8f58f8c.so
#32 0x00007fe57a752312 in rustc::ty::print::Printer::default_print_def_path () from /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-17772cbea8f58f8c.so
#33 0x00007fe57a74b5ad in <rustc::ty::print::pretty::FmtPrinter<F> as rustc::ty::print::Printer>::print_def_path () from /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-17772cbea8f58f8c.so
#34 0x00007fe57a743bac in rustc::ty::print::pretty::PrettyPrinter::try_print_visible_def_path_recur () from /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-17772cbea8f58f8c.so
#35 0x00007fe57a743ab5 in rustc::ty::print::pretty::PrettyPrinter::try_print_visible_def_path_recur () from /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-17772cbea8f58f8c.so
#36 0x00007fe57a74b510 in <rustc::ty::print::pretty::FmtPrinter<F> as rustc::ty::print::Printer>::print_def_path () from /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-17772cbea8f58f8c.so
#37 0x00007fe57a752373 in rustc::ty::print::Printer::default_print_def_path () from /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-17772cbea8f58f8c.so
#38 0x00007fe57a74b5ad in <rustc::ty::print::pretty::FmtPrinter<F> as rustc::ty::print::Printer>::print_def_path () from /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-17772cbea8f58f8c.so
#39 0x00007fe57a74ec81 in <rustc::ty::print::pretty::FmtPrinter<F> as rustc::ty::print::pretty::PrettyPrinter>::generic_delimiters ()
   from /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-17772cbea8f58f8c.so
#40 0x00007fe57a752a42 in rustc::ty::print::Printer::default_print_def_path () from /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-17772cbea8f58f8c.so
#41 0x00007fe57a74b5ad in <rustc::ty::print::pretty::FmtPrinter<F> as rustc::ty::print::Printer>::print_def_path () from /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-17772cbea8f58f8c.so
#42 0x00007fe57a752312 in rustc::ty::print::Printer::default_print_def_path () from /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-17772cbea8f58f8c.so
#43 0x00007fe57a74b5ad in <rustc::ty::print::pretty::FmtPrinter<F> as rustc::ty::print::Printer>::print_def_path () from /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-17772cbea8f58f8c.so
#44 0x00007fe57a752312 in rustc::ty::print::Printer::default_print_def_path () from /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-17772cbea8f58f8c.so
#45 0x00007fe57a74b5ad in <rustc::ty::print::pretty::FmtPrinter<F> as rustc::ty::print::Printer>::print_def_path () from /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-17772cbea8f58f8c.so
#46 0x00007fe57a752312 in rustc::ty::print::Printer::default_print_def_path () from /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-17772cbea8f58f8c.so
#47 0x00007fe57a74b5ad in <rustc::ty::print::pretty::FmtPrinter<F> as rustc::ty::print::Printer>::print_def_path () from /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-17772cbea8f58f8c.so
#48 0x00007fe57a743bac in rustc::ty::print::pretty::PrettyPrinter::try_print_visible_def_path_recur () from /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-17772cbea8f58f8c.so
#49 0x00007fe57a743ab5 in rustc::ty::print::pretty::PrettyPrinter::try_print_visible_def_path_recur () from /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-17772cbea8f58f8c.so

@Kestrer
Copy link
Contributor

Kestrer commented Jan 3, 2020

This crash also occurs with this simplified code:

use serde::{Serialize, Serializer};

struct Type;

impl Serialize for Type {
    fn serialize<S>(&self, _: S) -> Result<S::Ok, S::Error>
    where
        S: Serializer
    {
        #[derive(Serialize)]
        struct S;
    }
}

It happens with #[derive(Serialize)], #[derive(Deserialize)] but not standard library derives. It also happens when implementing Deserialize:

use serde::{Deserialize, Deserializer};

struct Type;

impl<'de> Deserialize<'de> for Type {
    fn deserialize<D>(_: D) -> Result<Self, D::Error>
    where
        D: Deserializer<'de>
    {
        #[derive(Serialize)]
        struct S;
    }
}

@dtolnay
Copy link
Member

dtolnay commented Jan 4, 2020

Duplicate of #55779.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C-bug Category: This is a bug. I-crash Issue: The compiler crashes (SIGSEGV, SIGABRT, etc). Use I-ICE instead when the compiler panics. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.
Projects
None yet
Development

No branches or pull requests

5 participants