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

Segfault with increased recursion_limit #74711

Closed
alecmocatta opened this issue Jul 24, 2020 · 11 comments · Fixed by #74822
Closed

Segfault with increased recursion_limit #74711

alecmocatta opened this issue Jul 24, 2020 · 11 comments · Fixed by #74822
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. regression-from-stable-to-stable Performance or correctness regression from one stable version to another. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.

Comments

@alecmocatta
Copy link
Contributor

I would expect rustc to error with "overflow evaluating the requirement", or compile without issue. Instead it segfaults.

#![recursion_limit = "2560"]

trait Foo {
    type Item;
}

trait Bar {}

trait Baz {}

impl<T: Bar> Foo for T {
    type Item = ();
}

impl<'a, T> Foo for &'a Vec<T>
where
    Self::Item: Baz,
{
    type Item = &'a T;
}

(Playground)

Errors:

   Compiling playground v0.0.1 (/playground)
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 -Cembed-bitcode=no -C codegen-units=1 -C debuginfo=2 -C metadata=825c57de1a7e1cd8 -C extra-filename=-825c57de1a7e1cd8 --out-dir /playground/target/debug/deps -L dependency=/playground/target/debug/deps --extern addr2line=/playground/target/debug/deps/libaddr2line-ec47674828eca12b.rmeta --extern adler=/playground/target/debug/deps/libadler-533a168f0267d82b.rmeta --extern adler32=/playground/target/debug/deps/libadler32-a57fc6103380480f.rmeta --extern aho_corasick=/playground/target/debug/deps/libaho_corasick-d3c08a36ba4ff1cc.rmeta --extern ansi_term_0_11_0=/playground/target/debug/deps/libansi_term-622e724c043a12dd.rmeta --extern ansi_term=/playground/target/debug/deps/libansi_term-cd57b7dbaab31588.rmeta --extern approx=/playground/target/debug/deps/libapprox-71fb772135ec98e6.rmeta --extern arc_swap=/playground/target/debug/deps/libarc_swap-37175350fe0b5bb7.rmeta --extern arrayvec=/playground/target/debug/deps/libarrayvec-ea5651e2e5af95dc.rmeta --extern async_trait=/playground/target/debug/deps/libasync_trait-94fc3aefa4e430a8.so --extern atty=/playground/target/debug/deps/libatty-8c30fb7e401ecb4d.rmeta --extern autocfg=/playground/target/debug/deps/libautocfg-d9ae7cc76d4e41c2.rmeta --extern backtrace=/playground/target/debug/deps/libbacktrace-6b19ab37cc5042a0.rmeta --extern backtrace_sys=/playground/target/debug/deps/libbacktrace_sys-19d2ca13bd576709.rmeta --extern base64=/playground/target/debug/deps/libbase64-1f5408f90768a62f.rmeta --extern bit_set=/playground/target/debug/deps/libbit_set-46de71bc0b3bff7a.rmeta --extern bit_vec=/playground/target/debug/deps/libbit_vec-958ae84d26de5993.rmeta --extern bitflags=/playground/target/debug/deps/libbitflags-e41dcca6c54d37dc.rmeta --extern block_buffer=/playground/target/debug/deps/libblock_buffer-159436dd50239d7e.rmeta --extern bstr=/playground/target/debug/deps/libbstr-f2afffa4213dd343.rmeta --extern bytemuck=/playground/target/debug/deps/libbytemuck-2521a0d6fd97cc0f.rmeta --extern byteorder=/playground/target/debug/deps/libbyteorder-d4f340eb1bea9735.rmeta --extern bytes=/playground/target/debug/deps/libbytes-d05b7a0c3022d03a.rmeta --extern cc=/playground/target/debug/deps/libcc-9b5830d7423b21e9.rmeta --extern cfg_if=/playground/target/debug/deps/libcfg_if-70dbac066dd7629a.rmeta --extern chrono=/playground/target/debug/deps/libchrono-9597997d7ac46eb2.rmeta --extern clap=/playground/target/debug/deps/libclap-6270da1f28fd387e.rmeta --extern color_quant=/playground/target/debug/deps/libcolor_quant-17d029dba5a44db5.rmeta --extern cpuid_bool=/playground/target/debug/deps/libcpuid_bool-f89e2f38b01892fe.rmeta --extern crc32fast=/playground/target/debug/deps/libcrc32fast-ae7dedaca97c2d88.rmeta --extern crossbeam=/playground/target/debug/deps/libcrossbeam-9c5f7df0eeeefbe0.rmeta --extern crossbeam_channel=/playground/target/debug/deps/libcrossbeam_channel-8b124b0abb2c2542.rmeta --extern crossbeam_deque=/playground/target/debug/deps/libcrossbeam_deque-0c37c154e15d2d79.rmeta --extern crossbeam_epoch=/playground/target/debug/deps/libcrossbeam_epoch-7f83837bbcfb633d.rmeta --extern crossbeam_queue=/playground/target/debug/deps/libcrossbeam_queue-506be1a704a23497.rmeta --extern crossbeam_utils=/playground/target/debug/deps/libcrossbeam_utils-5a54e57764ff3ace.rmeta --extern crypto_mac=/playground/target/debug/deps/libcrypto_mac-8c459000ae881d59.rmeta --extern csv=/playground/target/debug/deps/libcsv-77ccf902bb51b393.rmeta --extern csv_core=/playground/target/debug/deps/libcsv_core-11cde19ed38c8e7b.rmeta --extern data_encoding=/playground/target/debug/deps/libdata_encoding-49d921a4b78211ca.rmeta --extern deflate=/playground/target/debug/deps/libdeflate-65dbc6c6a709e914.rmeta --extern digest=/playground/target/debug/deps/libdigest-998639ecb953355e.rmeta --extern dtoa=/playground/target/debug/deps/libdtoa-fc2af20d0dab7ad3.rmeta --extern either=/playground/target/debug/deps/libeither-abbd5a2390171753.rmeta --extern encoding_rs=/playground/target/debug/deps/libencoding_rs-4a47ef4d88567ee4.rmeta --extern env_logger=/playground/target/debug/deps/libenv_logger-177d98b991ed4d00.rmeta --extern error_chain=/playground/target/debug/deps/liberror_chain-062bb4ac5a2fd8b5.rmeta --extern failure=/playground/target/debug/deps/libfailure-7184aafcbcae624b.rmeta --extern failure_derive=/playground/target/debug/deps/libfailure_derive-c8d6872858099031.so --extern fallible_iterator=/playground/target/debug/deps/libfallible_iterator-21e2071af8b2b97a.rmeta --extern fallible_streaming_iterator=/playground/target/debug/deps/libfallible_streaming_iterator-70272656ea725f73.rmeta --extern filetime=/playground/target/debug/deps/libfiletime-0b33fddceb95f95a.rmeta --extern fixedbitset=/playground/target/debug/deps/libfixedbitset-f6860dc731db70be.rmeta --extern flate2=/playground/target/debug/deps/libflate2-07380c170211411d.rmeta --extern fnv=/playground/target/debug/deps/libfnv-85686a93e0df85a4.rmeta --extern foreign_types=/playground/target/debug/deps/libforeign_types-08f3ca372fb69d58.rmeta --extern foreign_types_shared=/playground/target/debug/deps/libforeign_types_shared-129b074ca41b8a93.rmeta --extern futf=/playground/target/debug/deps/libfutf-415d06e4d22bb666.rmeta --extern futures=/playground/target/debug/deps/libfutures-4b432f0b0a7601d2.rmeta --extern futures_channel=/playground/target/debug/deps/libfutures_channel-9e1fe998d056b0ed.rmeta --extern futures_core=/playground/target/debug/deps/libfutures_core-a6776008893b95f1.rmeta --extern futures_executor=/playground/target/debug/deps/libfutures_executor-83a293bd4ce9cf2f.rmeta --extern futures_io=/playground/target/debug/deps/libfutures_io-c017c3bbafcfff8d.rmeta --extern futures_macro=/playground/target/debug/deps/libfutures_macro-6d88a8c7ca16f988.so --extern futures_sink=/playground/target/debug/deps/libfutures_sink-0a2fd4fa2d05101b.rmeta --extern futures_task=/playground/target/debug/deps/libfutures_task-f08ab9102eed15d2.rmeta --extern futures_util=/playground/target/debug/deps/libfutures_util-0b673f61078f11c8.rmeta --extern generic_array_0_13_2=/playground/target/debug/deps/libgeneric_array-1c0c2ddb01d2fd66.rmeta --extern generic_array=/playground/target/debug/deps/libgeneric_array-adcc97fcac638cf7.rmeta --extern getrandom=/playground/target/debug/deps/libgetrandom-687ce03fd65e5054.rmeta --extern gif=/playground/target/debug/deps/libgif-a2eecb505eec156c.rmeta --extern gimli=/playground/target/debug/deps/libgimli-398913cfad851577.rmeta --extern glob=/playground/target/debug/deps/libglob-b4b470452a91634a.rmeta --extern h2=/playground/target/debug/deps/libh2-f770d5efdd611b09.rmeta --extern hmac=/playground/target/debug/deps/libhmac-718804ec0957ddb6.rmeta --extern html5ever=/playground/target/debug/deps/libhtml5ever-e2e4cdd69ede867c.rmeta --extern http=/playground/target/debug/deps/libhttp-ccbc0531c1f3838d.rmeta --extern http_body=/playground/target/debug/deps/libhttp_body-efbb393f0634e188.rmeta --extern httparse=/playground/target/debug/deps/libhttparse-8a8f1fca942afdb2.rmeta --extern humantime=/playground/target/debug/deps/libhumantime-7f8d16e93f97f0a5.rmeta --extern hyper=/playground/target/debug/deps/libhyper-30dc26299ba5ba51.rmeta --extern hyper_tls=/playground/target/debug/deps/libhyper_tls-f6009ee771ed941d.rmeta --extern idna=/playground/target/debug/deps/libidna-6e191c7450f1abe0.rmeta --extern image=/playground/target/debug/deps/libimage-7979848fea4d6b67.rmeta --extern indexmap=/playground/target/debug/deps/libindexmap-a7651a98a07d2998.rmeta --extern instant=/playground/target/debug/deps/libinstant-b4aea122da68db28.rmeta --extern iovec=/playground/target/debug/deps/libiovec-8767f81cd1d34bfc.rmeta --extern itertools=/playground/target/debug/deps/libitertools-8079fa918d94c7c0.rmeta --extern itoa=/playground/target/debug/deps/libitoa-5b51356992133576.rmeta --extern jpeg_decoder=/playground/target/debug/deps/libjpeg_decoder-7a19c294ff24d27e.rmeta --extern kernel32=/playground/target/debug/deps/libkernel32-e436a405c9479643.rmeta --extern lazy_static=/playground/target/debug/deps/liblazy_static-2cf37aa6d4c0d270.rmeta --extern libc=/playground/target/debug/deps/liblibc-8383a363cad4afd8.rmeta --extern libm=/playground/target/debug/deps/liblibm-466c18b3ca4a594e.rmeta --extern libsqlite3_sys=/playground/target/debug/deps/liblibsqlite3_sys-33ce70c155215bba.rmeta --extern linked_hash_map=/playground/target/debug/deps/liblinked_hash_map-e9a514ab0fd04f12.rmeta --extern lock_api_0_3_4=/playground/target/debug/deps/liblock_api-8b4a624199ae684b.rmeta --extern lock_api=/playground/target/debug/deps/liblock_api-4b319b248f35335a.rmeta --extern log=/playground/target/debug/deps/liblog-b89376b616c8f8a4.rmeta --extern log_mdc=/playground/target/debug/deps/liblog_mdc-d8cca5d31c932456.rmeta --extern log4rs=/playground/target/debug/deps/liblog4rs-271b6d92e5841ce7.rmeta --extern lru_cache=/playground/target/debug/deps/liblru_cache-a7a3cd71d9a9788e.rmeta --extern lzw=/playground/target/debug/deps/liblzw-09c6b6a1a9798444.rmeta --extern mac=/playground/target/debug/deps/libmac-66039fd2c9797c4f.rmeta --extern markup5ever=/playground/target/debug/deps/libmarkup5ever-b61bca94480a40b5.rmeta --extern markup5ever_rcdom=/playground/target/debug/deps/libmarkup5ever_rcdom-055b80c158caa7a2.rmeta --extern matches=/playground/target/debug/deps/libmatches-368517157e40f79c.rmeta --extern matrixmultiply=/playground/target/debug/deps/libmatrixmultiply-4b001418bae1d267.rmeta --extern maybe_uninit=/playground/target/debug/deps/libmaybe_uninit-5d12dd309ce3af7e.rmeta --extern md5=/playground/target/debug/deps/libmd5-b5e48ca589fc1f2f.rmeta --extern memchr=/playground/target/debug/deps/libmemchr-949533ae8e766276.rmeta --extern memmap=/playground/target/debug/deps/libmemmap-c84141132f4a6067.rmeta --extern memoffset=/playground/target/debug/deps/libmemoffset-45781c7bd0937cdd.rmeta --extern mime=/playground/target/debug/deps/libmime-6490e6db039e42bc.rmeta --extern mime_guess=/playground/target/debug/deps/libmime_guess-0256541f619c4343.rmeta --extern miniz_oxide_0_3_7=/playground/target/debug/deps/libminiz_oxide-7a54530d5798ed4a.rmeta --extern miniz_oxide=/playground/target/debug/deps/libminiz_oxide-228f10c93bb3a992.rmeta --extern mio_0_6_22=/playground/target/debug/deps/libmio-6a1e650be50b10a3.rmeta --extern mio=/playground/target/debug/deps/libmio-bba211b9d357037f.rmeta --extern mio_uds=/playground/target/debug/deps/libmio_uds-e7297be0c65196a8.rmeta --extern nalgebra=/playground/target/debug/deps/libnalgebra-8f5ea98e0e302e2c.rmeta --extern native_tls=/playground/target/debug/deps/libnative_tls-c49929b46bae8e1d.rmeta --extern ndarray=/playground/target/debug/deps/libndarray-cfe97877bba9358a.rmeta --extern net2=/playground/target/debug/deps/libnet2-508d037c66b31035.rmeta --extern debug_unreachable=/playground/target/debug/deps/libdebug_unreachable-590ba078be7c6cdd.rmeta --extern nodrop=/playground/target/debug/deps/libnodrop-1c1eeb1fc35d352d.rmeta --extern num=/playground/target/debug/deps/libnum-fe648f4babce3e0c.rmeta --extern num_bigint=/playground/target/debug/deps/libnum_bigint-01f82e3fc83d1927.rmeta --extern num_complex_0_2_4=/playground/target/debug/deps/libnum_complex-5f2bdc51a6a61a4c.rmeta --extern num_complex=/playground/target/debug/deps/libnum_complex-62a70d68b3d61dbe.rmeta --extern num_integer=/playground/target/debug/deps/libnum_integer-1d0eb6fa36172b46.rmeta --extern num_iter=/playground/target/debug/deps/libnum_iter-ee88729ebfa416be.rmeta --extern num_rational_0_2_4=/playground/target/debug/deps/libnum_rational-96bbbccd3c3d5b5e.rmeta --extern num_rational=/playground/target/debug/deps/libnum_rational-4ef05f4e98559366.rmeta --extern num_traits=/playground/target/debug/deps/libnum_traits-2c5cf12c8f6a5636.rmeta --extern num_cpus=/playground/target/debug/deps/libnum_cpus-dcdde136898707bb.rmeta --extern object=/playground/target/debug/deps/libobject-7d619d966c19e70c.rmeta --extern once_cell=/playground/target/debug/deps/libonce_cell-1b1fbb4e963afc90.rmeta --extern opaque_debug=/playground/target/debug/deps/libopaque_debug-bb701c3bfff27965.rmeta --extern openssl=/playground/target/debug/deps/libopenssl-c899db4e7aa40194.rmeta --extern openssl_probe=/playground/target/debug/deps/libopenssl_probe-1ac429f51e3f1516.rmeta --extern openssl_sys=/playground/target/debug/deps/libopenssl_sys-45e01f61db4986e9.rmeta --extern ordered_float=/playground/target/debug/deps/libordered_float-0b5ce9e2f1b28cac.rmeta --extern parking_lot_0_10_2=/playground/target/debug/deps/libparking_lot-0dff51e4475ef4a4.rmeta --extern parking_lot=/playground/target/debug/deps/libparking_lot-9532664b5d4645f6.rmeta --extern parking_lot_core_0_7_2=/playground/target/debug/deps/libparking_lot_core-fb33f2edfc936953.rmeta --extern parking_lot_core=/playground/target/debug/deps/libparking_lot_core-2f0d1cd96be9679e.rmeta --extern paste=/playground/target/debug/deps/libpaste-318ed5792327c3c5.rmeta --extern paste_impl=/playground/target/debug/deps/libpaste_impl-b23510a70ac33d7d.so --extern percent_encoding=/playground/target/debug/deps/libpercent_encoding-9ab61319e4ed5eb3.rmeta --extern petgraph=/playground/target/debug/deps/libpetgraph-73956abc50c85c78.rmeta --extern phf=/playground/target/debug/deps/libphf-619f8cb4cdb9383e.rmeta --extern phf_codegen=/playground/target/debug/deps/libphf_codegen-18ac2e716c91bc2d.rmeta --extern phf_generator=/playground/target/debug/deps/libphf_generator-61173137364bff56.rmeta --extern phf_shared=/playground/target/debug/deps/libphf_shared-af10d0f13f860e86.rmeta --extern pin_project=/playground/target/debug/deps/libpin_project-b730f5c36b695278.rmeta --extern pin_project_internal=/playground/target/debug/deps/libpin_project_internal-3be1346b9a1dc6e0.so --extern pin_project_lite=/playground/target/debug/deps/libpin_project_lite-4ad4f2e59959fe6f.rmeta --extern pin_utils=/playground/target/debug/deps/libpin_utils-54f98b026e031253.rmeta --extern pkg_config=/playground/target/debug/deps/libpkg_config-f0983e74158957a0.rmeta --extern png=/playground/target/debug/deps/libpng-39e582e5ac53fe94.rmeta --extern postgres=/playground/target/debug/deps/libpostgres-fa78dc6d76d9fd53.rmeta --extern postgres_protocol=/playground/target/debug/deps/libpostgres_protocol-8970a5b8ba0337f1.rmeta --extern postgres_types=/playground/target/debug/deps/libpostgres_types-658489f81bd011b3.rmeta --extern ppv_lite86=/playground/target/debug/deps/libppv_lite86-a24cfd6f6fdce35d.rmeta --extern precomputed_hash=/playground/target/debug/deps/libprecomputed_hash-9677c948487dd63e.rmeta --extern proc_macro_hack=/playground/target/debug/deps/libproc_macro_hack-4060f636760e02d0.so --extern proc_macro_nested=/playground/target/debug/deps/libproc_macro_nested-d32195041cf352cd.rmeta --extern proc_macro2=/playground/target/debug/deps/libproc_macro2-4cf679aeaafbebaa.rmeta --extern quick_error=/playground/target/debug/deps/libquick_error-150351b4fe7b2f11.rmeta --extern quote=/playground/target/debug/deps/libquote-05c4e3c3531bc10b.rmeta --extern rand=/playground/target/debug/deps/librand-720cd340eff14e88.rmeta --extern rand_chacha=/playground/target/debug/deps/librand_chacha-3b1a6065a36d215f.rmeta --extern rand_core=/playground/target/debug/deps/librand_core-9a28fd566b58282f.rmeta --extern rand_distr=/playground/target/debug/deps/librand_distr-85955fb7c1072e2b.rmeta --extern rand_hc=/playground/target/debug/deps/librand_hc-43740102e4b27ff4.rmeta --extern rand_pcg=/playground/target/debug/deps/librand_pcg-cdde1e0279899028.rmeta --extern rand_xorshift=/playground/target/debug/deps/librand_xorshift-5c5222ff28de3bd4.rmeta --extern rawpointer=/playground/target/debug/deps/librawpointer-1bab61e40165c093.rmeta --extern rayon=/playground/target/debug/deps/librayon-e1a5264775667c6f.rmeta --extern rayon_core=/playground/target/debug/deps/librayon_core-047f2b1d57ec11be.rmeta --extern regex=/playground/target/debug/deps/libregex-eb43b2a23096dc4d.rmeta --extern regex_automata=/playground/target/debug/deps/libregex_automata-f522b8ae12676b9f.rmeta --extern regex_syntax=/playground/target/debug/deps/libregex_syntax-84ba1f16e1550fb5.rmeta --extern remove_dir_all=/playground/target/debug/deps/libremove_dir_all-576bf33be4c7c60a.rmeta --extern reqwest=/playground/target/debug/deps/libreqwest-fbb8378c23f103e7.rmeta --extern ring=/playground/target/debug/deps/libring-728045ac3944de0e.rmeta --extern rusqlite=/playground/target/debug/deps/librusqlite-674654bb6941e8e9.rmeta --extern rustc_demangle=/playground/target/debug/deps/librustc_demangle-7e2dd4f4b5b030ff.rmeta --extern rustc_serialize=/playground/target/debug/deps/librustc_serialize-4bc070bac364a5f4.rmeta --extern rustc_version=/playground/target/debug/deps/librustc_version-fed6b3cde4e44b31.rmeta --extern ryu=/playground/target/debug/deps/libryu-f87f1f33923c8120.rmeta --extern same_file=/playground/target/debug/deps/libsame_file-60637c36b43cf5c7.rmeta --extern scoped_threadpool=/playground/target/debug/deps/libscoped_threadpool-573434a5f80aff09.rmeta --extern scopeguard=/playground/target/debug/deps/libscopeguard-9224d59703bffb15.rmeta --extern select=/playground/target/debug/deps/libselect-a29b8cd35c710776.rmeta --extern semver_0_9_0=/playground/target/debug/deps/libsemver-72cfe4c74165f76d.rmeta --extern semver=/playground/target/debug/deps/libsemver-8727f1a0f1ede603.rmeta --extern semver_parser_0_7_0=/playground/target/debug/deps/libsemver_parser-9c0572345fff0b03.rmeta --extern semver_parser=/playground/target/debug/deps/libsemver_parser-b74ce6a80f522312.rmeta --extern serde=/playground/target/debug/deps/libserde-57bd5d23445083a6.rmeta --extern serde_value=/playground/target/debug/deps/libserde_value-e7bd6c3e0fda9c57.rmeta --extern serde_derive=/playground/target/debug/deps/libserde_derive-d5ffa6702bbad00c.so --extern serde_json=/playground/target/debug/deps/libserde_json-12c4a2c928929d70.rmeta --extern serde_urlencoded=/playground/target/debug/deps/libserde_urlencoded-e26554ac795d5fde.rmeta --extern serde_yaml=/playground/target/debug/deps/libserde_yaml-ebdfc443f1d13fe7.rmeta --extern sha2=/playground/target/debug/deps/libsha2-f34ca808f2753694.rmeta --extern simba=/playground/target/debug/deps/libsimba-77c3c2bb77dbd856.rmeta --extern siphasher=/playground/target/debug/deps/libsiphasher-76835abdbda9dc96.rmeta --extern slab=/playground/target/debug/deps/libslab-c0fb3428ff2ca621.rmeta --extern smallvec=/playground/target/debug/deps/libsmallvec-fd41795aab8d4e63.rmeta --extern socket2=/playground/target/debug/deps/libsocket2-2a501eb522251562.rmeta --extern spin=/playground/target/debug/deps/libspin-e47499cec9c84b90.rmeta --extern standback=/playground/target/debug/deps/libstandback-86a23f5513d5ae46.rmeta --extern string_cache=/playground/target/debug/deps/libstring_cache-598a1df464b810f8.rmeta --extern string_cache_codegen=/playground/target/debug/deps/libstring_cache_codegen-cae61850b3167ff9.rmeta --extern stringprep=/playground/target/debug/deps/libstringprep-efb98fe82f3f4d71.rmeta --extern strsim_0_8_0=/playground/target/debug/deps/libstrsim-ab6382a4d9bc06c2.rmeta --extern strsim=/playground/target/debug/deps/libstrsim-8749484d74aee88e.rmeta --extern subtle=/playground/target/debug/deps/libsubtle-c5fee972c74eec95.rmeta --extern syn=/playground/target/debug/deps/libsyn-ca661fe5d0b6210d.rmeta --extern synstructure=/playground/target/debug/deps/libsynstructure-c35d9652124a5fea.rmeta --extern tar=/playground/target/debug/deps/libtar-35d3c626965d66ff.rmeta --extern tempfile=/playground/target/debug/deps/libtempfile-416358705ded9b1e.rmeta --extern tendril=/playground/target/debug/deps/libtendril-286cae9caccfed10.rmeta --extern termcolor=/playground/target/debug/deps/libtermcolor-a38bb29f2ebce7f0.rmeta --extern textwrap_0_11_0=/playground/target/debug/deps/libtextwrap-229a6590d5347cb6.rmeta --extern textwrap=/playground/target/debug/deps/libtextwrap-646ac04f251395be.rmeta --extern thread_id=/playground/target/debug/deps/libthread_id-821f976137687467.rmeta --extern thread_local=/playground/target/debug/deps/libthread_local-a3cb54b617b50bf8.rmeta --extern threadpool=/playground/target/debug/deps/libthreadpool-10f9e924609e4e5d.rmeta --extern tiff=/playground/target/debug/deps/libtiff-686936b0f5ec7539.rmeta --extern time_0_1_43=/playground/target/debug/deps/libtime-ebc0de1b840d14f1.rmeta --extern time=/playground/target/debug/deps/libtime-398cbc3086749dbb.rmeta --extern time_macros=/playground/target/debug/deps/libtime_macros-2b3e5432dd55ff8f.rmeta --extern time_macros_impl=/playground/target/debug/deps/libtime_macros_impl-81a05f30e69730bb.so --extern tinyvec=/playground/target/debug/deps/libtinyvec-583985fdad518447.rmeta --extern tokio=/playground/target/debug/deps/libtokio-f73a183edff40894.rmeta --extern tokio_postgres=/playground/target/debug/deps/libtokio_postgres-7ff7f9d5ec077418.rmeta --extern tokio_tls=/playground/target/debug/deps/libtokio_tls-d278404cfe127afd.rmeta --extern tokio_util=/playground/target/debug/deps/libtokio_util-71402b3f73d2a3de.rmeta --extern toml=/playground/target/debug/deps/libtoml-6dc3a6202531c1c3.rmeta --extern tower_service=/playground/target/debug/deps/libtower_service-6344acc2d29f4d7e.rmeta --extern traitobject=/playground/target/debug/deps/libtraitobject-9329c4c6703ffe8a.rmeta --extern try_lock=/playground/target/debug/deps/libtry_lock-0eab1e75f6049487.rmeta --extern typemap=/playground/target/debug/deps/libtypemap-b5754c054e2e149a.rmeta --extern typenum=/playground/target/debug/deps/libtypenum-d4f346538c89252c.rmeta --extern unicase=/playground/target/debug/deps/libunicase-77c857ac8ce270a8.rmeta --extern unicode_bidi=/playground/target/debug/deps/libunicode_bidi-7e4276eb7b0e9656.rmeta --extern unicode_normalization=/playground/target/debug/deps/libunicode_normalization-19522d154379095f.rmeta --extern unicode_segmentation=/playground/target/debug/deps/libunicode_segmentation-f2fdc30213db2bae.rmeta --extern unicode_width=/playground/target/debug/deps/libunicode_width-e1291215efd2b1d6.rmeta --extern unicode_xid=/playground/target/debug/deps/libunicode_xid-6dad929435f4914b.rmeta --extern unsafe_any=/playground/target/debug/deps/libunsafe_any-13611d6c648a73f3.rmeta --extern untrusted=/playground/target/debug/deps/libuntrusted-3814fca2ebd1beb3.rmeta --extern url=/playground/target/debug/deps/liburl-94e6e41c410314a1.rmeta --extern utf8=/playground/target/debug/deps/libutf8-62ffe963ae6d5792.rmeta --extern utf8_ranges=/playground/target/debug/deps/libutf8_ranges-a23714c80157c339.rmeta --extern uuid=/playground/target/debug/deps/libuuid-52a7f2257be09422.rmeta --extern vec_map=/playground/target/debug/deps/libvec_map-662bab0cdc7d37f4.rmeta --extern version_check=/playground/target/debug/deps/libversion_check-29696fcd5d810c85.rmeta --extern void=/playground/target/debug/deps/libvoid-2992bb233a5ea14c.rmeta --extern walkdir=/playground/target/debug/deps/libwalkdir-72cc44e5bf95f991.rmeta --extern want=/playground/target/debug/deps/libwant-b780a23cb8972ba4.rmeta --extern winapi_0_2_8=/playground/target/debug/deps/libwinapi-c24d54c4c1e8b873.rmeta --extern winapi=/playground/target/debug/deps/libwinapi-29aa085936c2e9f0.rmeta --extern build=/playground/target/debug/deps/libbuild-7205bb72df0dfae5.rmeta --extern xattr=/playground/target/debug/deps/libxattr-b4fdf5392398f6fd.rmeta --extern xml5ever=/playground/target/debug/deps/libxml5ever-414e6c9bfa33f87f.rmeta --extern yaml_rust=/playground/target/debug/deps/libyaml_rust-f423241bcd78d604.rmeta -L native=/playground/target/debug/build/backtrace-sys-ea1ac1c5fe483d57/out -L native=/playground/target/debug/build/libsqlite3-sys-aa352d2903e7fc15/out -L native=/playground/target/debug/build/ring-6768125732cb54d3/out` (signal: 11, SIGSEGV: invalid memory reference)
@alecmocatta alecmocatta added the C-bug Category: This is a bug. label Jul 24, 2020
@jonas-schievink jonas-schievink added I-crash Issue: The compiler crashes (SIGSEGV, SIGABRT, etc). Use I-ICE instead when the compiler panics. I-prioritize Issue: Indicates that prioritization has been requested for this issue. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. labels Jul 24, 2020
@JohnTitor
Copy link
Member

This segfault occurs since 1.45.0, 1.44.1 emits the expected error. It'd be great if we could bisect if possible.

@JohnTitor JohnTitor added E-needs-bisection Call for participation: This issue needs bisection: https://github.com/rust-lang/cargo-bisect-rustc regression-from-stable-to-stable Performance or correctness regression from one stable version to another. labels Jul 24, 2020
@mati865
Copy link
Contributor

mati865 commented Jul 24, 2020

18 out of 49855 backtrace frames:

Details
#0  0x00007ffff6857435 in rustc_query_system::query::plumbing::get_query_impl ()
   from /home/mateusz/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-62fe6623fe4416e5.so
#1  0x00007ffff67ba854 in rustc_middle::ty::print::pretty::PrettyPrinter::try_print_visible_def_path_recur ()
   from /home/mateusz/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-62fe6623fe4416e5.so
#2  0x00007ffff67bab62 in rustc_middle::ty::print::pretty::PrettyPrinter::try_print_visible_def_path_recur ()
   from /home/mateusz/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-62fe6623fe4416e5.so
#3  0x00007ffff67c57fe in <rustc_middle::ty::print::pretty::FmtPrinter<F> as rustc_middle::ty::print::Printer>::print_def_path ()
   from /home/mateusz/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-62fe6623fe4416e5.so
#4  0x00007ffff67d2ba6 in rustc_middle::ty::print::Printer::default_print_def_path ()
   from /home/mateusz/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-62fe6623fe4416e5.so
#5  0x00007ffff67c58a7 in <rustc_middle::ty::print::pretty::FmtPrinter<F> as rustc_middle::ty::print::Printer>::print_def_path ()
   from /home/mateusz/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-62fe6623fe4416e5.so
#6  0x00007ffff67bed7d in rustc_middle::ty::print::pretty::PrettyPrinter::pretty_print_type ()
   from /home/mateusz/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-62fe6623fe4416e5.so
#7  0x00007ffff69d7949 in rustc_middle::ty::print::pretty::<impl rustc_middle::ty::print::Print<P> for rustc_middle::ty::sty::TypeAndMut>::print ()
   from /home/mateusz/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-62fe6623fe4416e5.so
#8  0x00007ffff67be474 in rustc_middle::ty::print::pretty::PrettyPrinter::pretty_print_type ()
   from /home/mateusz/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-62fe6623fe4416e5.so
#9  0x00007ffff6b7c1af in rustc_middle::ty::print::pretty::<impl core::fmt::Display for &rustc_middle::ty::TyS>::fmt ()
   from /home/mateusz/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-62fe6623fe4416e5.so
#10 0x00007ffff3b603ac in core::fmt::write () at src/libcore/fmt/mod.rs:1076
#11 0x00007ffff3b532da in core::fmt::Write::write_fmt ()
    at /rustc/5c9e5df3a097e094641f16dab501ab1c4da10e9f/src/libcore/fmt/mod.rs:193
#12 alloc::fmt::format () at src/liballoc/fmt.rs:586
#13 0x00007ffff62cc781 in <rustc_infer::infer::InferCtxt as rustc_trait_selection::traits::error_reporting::suggestions::InferCtxtExt>::note_obligation_cause_code ()
   from /home/mateusz/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-62fe6623fe4416e5.so
#14 0x00007ffff62cc98e in <rustc_infer::infer::InferCtxt as rustc_trait_selection::traits::error_reporting::suggestions::InferCtxtExt>::note_obligation_cause_code ()
   from /home/mateusz/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-62fe6623fe4416e5.so
#15 0x00007ffff62cc98e in <rustc_infer::infer::InferCtxt as rustc_trait_selection::traits::error_reporting::suggestions::InferCtxtExt>::note_obligation_cause_code ()
   from /home/mateusz/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-62fe6623fe4416e5.so
#16 0x00007ffff62cc98e in <rustc_infer::infer::InferCtxt as rustc_trait_selection::traits::error_reporting::suggestions::InferCtxtExt>::note_obligation_cause_code ()
   from /home/mateusz/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-62fe6623fe4416e5.so
#17 0x00007ffff62cc98e in <rustc_infer::infer::InferCtxt as rustc_trait_selection::traits::error_reporting::suggestions::InferCtxtExt>::note_obligation_cause_code ()
   from /home/mateusz/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-62fe6623fe4416e5.so

Probably not very useful.

@LeSeulArtichaut
Copy link
Contributor

It'd be great if we could bisect if possible.

I believe that we still have the bors artifacts, so it should be possible to use cargo-bisect-rustc. @rustbot ping cleanup

@rustbot

This comment has been minimized.

@lcnr
Copy link
Contributor

lcnr commented Jul 26, 2020

@rustbot ping cleanup

@rustbot
Copy link
Collaborator

rustbot commented Jul 26, 2020

Hey Cleanup Crew ICE-breakers! This bug has been identified as a good
"Cleanup ICE-breaking candidate". In case it's useful, here are some
instructions for tackling these sorts of bugs. Maybe take a look?
Thanks! <3

cc @AminArria @camelid @chrissimpkins @contrun @DutchGhost @elshize @ethanboxx @h-michael @HallerPatrick @hdhoang @hellow554 @imtsuki @kanru @KarlK90 @LeSeulArtichaut @MAdrianMattocks @matheus-consoli @mental32 @nmccarty @Noah-Kennedy @pard68 @PeytonT @pierreN @Redblueflame @RobbieClarken @RobertoSnap @robjtede @SarthakSingh31 @senden9 @shekohex @sinato @spastorino @turboladen @woshilapin @yerke

@rustbot rustbot added the ICEBreaker-Cleanup-Crew Helping to "clean up" bugs with minimal examples and bisections label Jul 26, 2020
@AminArria
Copy link
Contributor

searched nightlies: from nightly-2020-05-07 to nightly-2020-05-08
regressed nightly: nightly-2020-05-08
searched commits: from 1836e3b to a08c473
regressed commit: 97f3eee

bisected with cargo-bisect-rustc v0.5.2

Host triple: x86_64-apple-darwin
Reproduce with:

cargo bisect-rustc --preserve --prompt --start 2020-05-07 --end 2020-05-08

@JohnTitor
Copy link
Member

It's likely related -- cc @oli-obk

@JohnTitor JohnTitor removed E-needs-bisection Call for participation: This issue needs bisection: https://github.com/rust-lang/cargo-bisect-rustc ICEBreaker-Cleanup-Crew Helping to "clean up" bugs with minimal examples and bisections labels Jul 27, 2020
@tesuji
Copy link
Contributor

tesuji commented Jul 27, 2020

Does #74708 fix this issue?

@JohnTitor
Copy link
Member

JohnTitor commented Jul 27, 2020

Does #74708 fix this issue?

Hm, I don't think so, let me confirm it. -- Confirmed with the master toolchain, it doesn't fix this.

@oli-obk
Copy link
Contributor

oli-obk commented Jul 27, 2020

I believe we need to wrap

and the similar invocations further down with ensure_sufficient_stack

@bors bors closed this as completed in 539ba96 Jul 27, 2020
@jyn514 jyn514 removed the I-prioritize Issue: Indicates that prioritization has been requested for this issue. label Feb 28, 2021
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. regression-from-stable-to-stable Performance or correctness regression from one stable version to another. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging a pull request may close this issue.