rust-lang / rust

Empowering everyone to build reliable and efficient software.
https://www.rust-lang.org
Other
98.16k stars 12.69k forks source link

rustc overflowed stack with serde #67817

Closed WaffleLapkin closed 4 years ago

WaffleLapkin commented 4 years ago

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)

Aaron1011 commented 4 years ago

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 commented 4 years ago

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 commented 4 years ago

Duplicate of #55779.