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

ICE: tuple_fields called on non-tuple #78469

Closed
leontoeides opened this issue Oct 28, 2020 · 1 comment
Closed

ICE: tuple_fields called on non-tuple #78469

leontoeides opened this issue Oct 28, 2020 · 1 comment
Labels
C-bug Category: This is a bug. I-ICE Issue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️ T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.

Comments

@leontoeides
Copy link

Code

use sqlx::mysql::MySqlPool;
use actix_web::{get, web, App, HttpServer, Responder};

#[actix_web::main]
async fn main() -> std::io::Result<()> {

    let sqlx_mysql_pool = block_on(MySqlPool::new("xxx"))?;

    HttpServer::new(|| App::new().service(index))
        .bind("127.0.0.1:8080")?
        .run()
        .await

}

Meta

rustc --version --verbose:

rustc 1.49.0-nightly (ffa2e7ae8 2020-10-24)
binary: rustc
commit-hash: ffa2e7ae8fbf9badc035740db949b9dae271c29f
commit-date: 2020-10-24
host: x86_64-pc-windows-msvc
release: 1.49.0-nightly
LLVM version: 11.0

Error output

<output>
Backtrace


error: internal compiler error: compiler\rustc_middle\src\ty\sty.rs:2150:18: tuple_fields called on non-tuple

thread 'rustc' panicked at 'Box<Any>', compiler\rustc_errors\src\lib.rs:945:9
stack backtrace:
   0:     0x7ffd32cc9b7e - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::hbb7524420f9ae79f
   1:     0x7ffd32cf7adb - core::fmt::write::h435be716304d26a1
   2:     0x7ffd32cbb508 - <std::io::IoSliceMut as core::fmt::Debug>::fmt::h89e6d3fd1c80838c
   3:     0x7ffd32ccf0bd - std::panicking::take_hook::h1b5ffd09c3541ec0
   4:     0x7ffd32ccec98 - std::panicking::take_hook::h1b5ffd09c3541ec0
   5:     0x7ffd01792587 - rustc_driver::report_ice::h0a6a09ce1a074efd
   6:     0x7ffd32ccfb10 - std::panicking::rust_panic_with_hook::he9661a82982eed74
   7:     0x7ffd05dfb3d0 - <rustc_errors::registry::InvalidErrorCode as core::fmt::Debug>::fmt::haa47007281d8d69d
   8:     0x7ffd05dfb379 - <rustc_errors::registry::InvalidErrorCode as core::fmt::Debug>::fmt::haa47007281d8d69d
   9:     0x7ffd05e03661 - <rustc_errors::diagnostic::StringPart as core::fmt::Debug>::fmt::h0e74c1792db6aa41
  10:     0x7ffd05e35d6f - rustc_errors::HandlerInner::err_count::h3797b647eeace099
  11:     0x7ffd05e34422 - rustc_errors::Handler::bug::h0a174d32ca88e813
  12:     0x7ffd05a665df - rustc_middle::util::bug::bug_fmt::h42bac936f78c8dfd
  13:     0x7ffd05a613c0 - rustc_middle::ty::walk::<impl rustc_middle::ty::subst::GenericArg>::walk_shallow::h0d56592a32eb5063
  14:     0x7ffd05a61363 - rustc_middle::ty::walk::<impl rustc_middle::ty::subst::GenericArg>::walk_shallow::h0d56592a32eb5063
  15:     0x7ffd05a6650c - rustc_middle::util::bug::bug_fmt::h42bac936f78c8dfd
  16:     0x7ffd05a66470 - rustc_middle::util::bug::bug_fmt::h42bac936f78c8dfd
  17:     0x7ffd05b385d5 - rustc_middle::ty::sty::<impl rustc_middle::ty::TyS>::tuple_fields::h315ea9cf885486cf
  18:     0x7ffd054513e2 - rustc_trait_selection::traits::select::SelectionContext::coinductive_predicate::hde744dc0e14d887d
  19:     0x7ffd0544c049 - <rustc_infer::infer::InferCtxt as rustc_trait_selection::traits::query::outlives_bounds::InferCtxtExt>::implied_outlives_bounds::h34a6863ea2a18d9e
  20:     0x7ffd0544a508 - <rustc_infer::infer::InferCtxt as rustc_trait_selection::traits::query::outlives_bounds::InferCtxtExt>::implied_outlives_bounds::h34a6863ea2a18d9e
  21:     0x7ffd055b2518 - <rustc_trait_selection::traits::fulfill::PendingPredicateObligation as core::fmt::Debug>::fmt::h92f05826260f4bcb
  22:     0x7ffd0545be05 - <rustc_trait_selection::traits::select::ProvisionalEvaluation as core::fmt::Debug>::fmt::h4c8eb5f4ea01fbae
  23:     0x7ffd05453007 - <rustc_trait_selection::traits::select::TraitObligationStack as core::fmt::Debug>::fmt::h03e8a8a563b44037
  24:     0x7ffd0544f537 - rustc_trait_selection::traits::select::SelectionContext::evaluate_root_obligation::h400c34b59c6bf929
  25:     0x7ffd055b2d30 - <rustc_trait_selection::traits::fulfill::PendingPredicateObligation as core::fmt::Debug>::fmt::h92f05826260f4bcb
  26:     0x7ffd0545eb33 - <rustc_trait_selection::traits::select::ProvisionalEvaluation as core::fmt::Debug>::fmt::h4c8eb5f4ea01fbae
  27:     0x7ffd0544e9e7 - rustc_trait_selection::traits::select::SelectionContext::evaluate_root_obligation::h400c34b59c6bf929
  28:     0x7ffd055e077e - <rustc_trait_selection::traits::const_evaluatable::is_const_evaluatable::FailureKind as core::fmt::Debug>::fmt::h4a441d1c79b6b84c
  29:     0x7ffd0545ab7e - rustc_trait_selection::traits::select::SelectionContext::select::hec8a798b6b637183
  30:     0x7ffd05418172 - unicode_normalization::__test_api::stream_safe::h690fea7d6b5af898
  31:     0x7ffd0544e020 - rustc_trait_selection::traits::select::SelectionContext::evaluate_root_obligation::h400c34b59c6bf929
  32:     0x7ffd03aa66b8 - <rustc_middle::ty::sty::TraitRef as rustc_traits::chalk::lowering::LowerInto<chalk_solve::rust_ir::TraitBound<rustc_middle::traits::chalk::RustInterner>>>::lower_into::h9a4d24d0da6426c6
  33:     0x7ffd03b0ae0d - <&rustc_middle::ty::list::List<rustc_middle::ty::subst::GenericArg> as rustc_traits::chalk::lowering::LowerInto<chalk_ir::Substitution<rustc_middle::traits::chalk::RustInterner>>>::lower_into::h59fc4b41ce4b3a29
  34:     0x7ffd0541f570 - unicode_normalization::__test_api::stream_safe::h690fea7d6b5af898
  35:     0x7ffd055affbc - <rustc_trait_selection::traits::fulfill::PendingPredicateObligation as core::fmt::Debug>::fmt::h92f05826260f4bcb
  36:     0x7ffd05463ad9 - <rustc_trait_selection::traits::select::ProvisionalEvaluation as core::fmt::Debug>::fmt::h4c8eb5f4ea01fbae
  37:     0x7ffd055ae774 - <rustc_trait_selection::traits::fulfill::PendingPredicateObligation as core::fmt::Debug>::fmt::h92f05826260f4bcb
  38:     0x7ffd0557b206 - <rustc_trait_selection::traits::fulfill::PendingPredicateObligation as core::fmt::Debug>::fmt::h92f05826260f4bcb
  39:     0x7ffd0544687b - <rustc_infer::infer::InferCtxt as rustc_trait_selection::traits::query::evaluate_obligation::InferCtxtExt>::evaluate_obligation::hbcb59ac653d1eea7
  40:     0x7ffd0544693d - <rustc_infer::infer::InferCtxt as rustc_trait_selection::traits::query::evaluate_obligation::InferCtxtExt>::evaluate_obligation_no_overflow::h0d0e28aaec42fdd8
  41:     0x7ffd05516c69 - <rustc_trait_selection::traits::fulfill::PendingPredicateObligation as core::fmt::Debug>::fmt::h92f05826260f4bcb
  42:     0x7ffd05515b83 - rustc_trait_selection::traits::fulfill::FulfillProcessor::progress_changed_obligations::hfc0d5092e740d698
  43:     0x7ffd055b3698 - <rustc_trait_selection::traits::fulfill::PendingPredicateObligation as core::fmt::Debug>::fmt::h92f05826260f4bcb
  44:     0x7ffd05514c4c - <rustc_trait_selection::traits::fulfill::FulfillmentContext as rustc_infer::traits::engine::TraitEngine>::select_where_possible::hd650af685fe950e5
  45:     0x7ffd03dd76e7 - rustc_typeck::check::fn_ctxt::_impl::<impl rustc_typeck::check::fn_ctxt::FnCtxt>::field_ty::hf4c05ad264ffe51b
  46:     0x7ffd0402ff83 - <rustc_typeck::astconv::PathSeg as core::fmt::Debug>::fmt::hfd86fd5c2458e7e2
  47:     0x7ffd040c4e1a - <rustc_typeck::check::fixup_opaque_types::FixupFolder as rustc_middle::ty::fold::TypeFolder>::fold_ty::hcdc6c08b5c1ca355
  48:     0x7ffd05c71c06 - rustc_middle::dep_graph::<impl rustc_query_system::dep_graph::DepKind for rustc_middle::dep_graph::dep_node::DepKind>::debug_node::h91f9b4aad6669883
  49:     0x7ffd05d18ec2 - <rustc_middle::ty::consts::kind::InferConst as core::fmt::Debug>::fmt::h0b895a994521cdda
  50:     0x7ffd05a787df - <rustc_middle::ty::subst::UserSubsts as core::fmt::Debug>::fmt::ha79bbe41fd6e2e7c
  51:     0x7ffd0590fa41 - <rustc_infer::infer::free_regions::FreeRegionMap as core::fmt::Debug>::fmt::h63def5b4465dc53f
  52:     0x7ffd05a0ea12 - rustc_middle::ty::query::force_from_dep_node::hb044d9c2643b7b30
  53:     0x7ffd03fb2c03 - <<rustc_typeck::collect::const_evaluatable_predicates_of::ConstCollector as rustc_hir::intravisit::Visitor>::visit_ty::TyAliasVisitor as rustc_middle::ty::fold::TypeVisitor>::visit_const::hf3927083f687e271
  54:     0x7ffd03fb2a0e - <<rustc_typeck::collect::const_evaluatable_predicates_of::ConstCollector as rustc_hir::intravisit::Visitor>::visit_ty::TyAliasVisitor as rustc_middle::ty::fold::TypeVisitor>::visit_const::hf3927083f687e271
  55:     0x7ffd03eb4c51 - rustc_typeck::check::writeback::<impl rustc_typeck::check::fn_ctxt::FnCtxt>::resolve_type_vars_in_body::h4c9e8bc9efe88ee2
  56:     0x7ffd040ca5a4 - <rustc_typeck::check::CheckItemTypesVisitor as rustc_hir::itemlikevisit::ItemLikeVisitor>::visit_item::h42a56a7a7b0b6e7b
  57:     0x7ffd03f9418d - <<rustc_typeck::collect::const_evaluatable_predicates_of::ConstCollector as rustc_hir::intravisit::Visitor>::visit_ty::TyAliasVisitor as rustc_middle::ty::fold::TypeVisitor>::visit_const::hf3927083f687e271
  58:     0x7ffd03ee1466 - <rustc_typeck::outlives::implicit_infer::InferVisitor as rustc_hir::itemlikevisit::ItemLikeVisitor>::visit_item::h8baf1728e76b3c64
  59:     0x7ffd03fa7f7f - <<rustc_typeck::collect::const_evaluatable_predicates_of::ConstCollector as rustc_hir::intravisit::Visitor>::visit_ty::TyAliasVisitor as rustc_middle::ty::fold::TypeVisitor>::visit_const::hf3927083f687e271
  60:     0x7ffd03f42789 - <rustc_typeck::outlives::explicit::ExplicitPredicatesMap as core::fmt::Debug>::fmt::hd3d7c0c50e41d57c
  61:     0x7ffd03e4edeb - rustc_typeck::check::writeback::<impl rustc_typeck::check::fn_ctxt::FnCtxt>::resolve_type_vars_in_body::h4c9e8bc9efe88ee2
  62:     0x7ffd03fe8bba - rustc_typeck::check_crate::he8b36c3222a01778
  63:     0x7ffd019a9b83 - rustc_interface::passes::QueryContext::print_stats::h83316569f356654e
  64:     0x7ffd017190ab - <[i64] as rand::AsByteSliceMut>::to_le::he7bd17e5835d34e6
  65:     0x7ffd0171a7b6 - <[i64] as rand::AsByteSliceMut>::to_le::he7bd17e5835d34e6
  66:     0x7ffd017af8af - rustc_ast::util::parser::prec_let_scrutinee_needs_par::h67b9ec40d4cf07ae
  67:     0x7ffd017a99be - <rustc_driver::Compilation as core::fmt::Debug>::fmt::h514b7a76f78a44e9
  68:     0x7ffd0173c912 - <rustc_span::symbol::SymbolStr as core::fmt::Display>::fmt::h58939e9964733da9
  69:     0x7ffd0171b44c - <[i64] as rand::AsByteSliceMut>::to_le::he7bd17e5835d34e6
  70:     0x7ffd017ab308 - rustc_ast::util::parser::prec_let_scrutinee_needs_par::h67b9ec40d4cf07ae
  71:     0x7ffd01772d66 - <rustc_ast::ast::Item<rustc_ast::ast::AssocItemKind> as rustc_ast::attr::HasAttrs>::attrs::hd867a83e3b0f360d
  72:     0x7ffd017ae5c8 - rustc_ast::util::parser::prec_let_scrutinee_needs_par::h67b9ec40d4cf07ae
  73:     0x7ffd01796f00 - <rustc_driver::Compilation as core::fmt::Debug>::fmt::h514b7a76f78a44e9
  74:     0x7ffd017b29cb - rustc_ast::util::parser::prec_let_scrutinee_needs_par::h67b9ec40d4cf07ae
  75:     0x7ffd01734723 - <rustc_span::symbol::SymbolStr as core::fmt::Display>::fmt::h58939e9964733da9
  76:     0x7ffd32cdfb37 - std::sys::windows::thread::Thread::new::hdbe5c1228d1cf93a
  77:     0x7ffd61447034 - BaseThreadInitThunk
  78:     0x7ffd6267cec1 - RtlUserThreadStart

note: the compiler unexpectedly panicked. this is a bug.

note: we would appreciate a bug report: https://github.com/rust-lang/rust/issues/new?labels=C-bug%2C+I-ICE%2C+T-compiler&template=ice.md

note: rustc 1.49.0-nightly (ffa2e7ae8 2020-10-24) running on x86_64-pc-windows-msvc

note: compiler flags: -C embed-bitcode=no -C debuginfo=2 -C incremental --crate-type bin

note: some of the compiler flags provided by cargo are hidden

query stack during panic:
#0 [evaluate_obligation] evaluating trait selection obligation `[closure@src\main.rs:148:21: 148:49]: std::clone::Clone`
#1 [typeck] type-checking `main`
#2 [typeck_item_bodies] type-checking all item bodies
#3 [analysis] running analysis passes on this crate
end of query stack
error: aborting due to 3 previous errors; 4 warnings emitted

Some errors have detailed explanations: E0425, E0432.
For more information about an error, try `rustc --explain E0425`.
error: could not compile `pronavio`

To learn more, run the command again with --verbose.

@leontoeides leontoeides added C-bug Category: This is a bug. I-ICE Issue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️ T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. labels Oct 28, 2020
@jyn514
Copy link
Member

jyn514 commented Oct 28, 2020

Duplicate of #77993.

@jyn514 jyn514 closed this as completed Oct 28, 2020
@camelid camelid changed the title note: the compiler unexpectedly panicked. this is a bug. ICE: tuple_fields called on non-tuple Oct 28, 2020
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-ICE Issue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️ 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

2 participants