Skip to content

repr(packed) triggers internal compiler error #48638

Closed
@robsmith11

Description

@robsmith11

Minimal example:

extern crate nalgebra;
use nalgebra::*;

#[repr(packed)]
struct S {
    x:Vector1<f64>,
}

fn main() {
}
$ rustc -vV
rustc 1.26.0-nightly (0ff9872b2 2018-02-28)
binary: rustc
commit-hash: 0ff9872b2280009f094af0df3dcdc542cc46a5fd
commit-date: 2018-02-28
host: x86_64-unknown-linux-gnu
release: 1.26.0-nightly
LLVM version: 6.0
$ cargo build
   Compiling err v0.1.0 (file:///tmp/err)
error: internal compiler error: librustc_typeck/check/wfcheck.rs:243: inference variables in nalgebra::Matrix<f64, nalgebra::U1, nalgebra::U1, nal\
gebra::MatrixArray<_, _, _>>
 --> src/main.rs:5:1
  |
5 | / struct S {
6 | |     x:Vector1<f64>,
7 | | }
  | |_^

thread 'rustc' panicked at 'Box<Any>', librustc_errors/lib.rs:482:9
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
stack backtrace:
   0: std::sys::unix::backtrace::tracing::imp::unwind_backtrace
             at libstd/sys/unix/backtrace/tracing/gcc_s.rs:49
   1: std::sys_common::backtrace::_print
             at libstd/sys_common/backtrace.rs:71
   2: std::panicking::default_hook::{{closure}}
             at libstd/sys_common/backtrace.rs:59
             at libstd/panicking.rs:206
   3: std::panicking::default_hook
             at libstd/panicking.rs:222
   4: core::ops::function::Fn::call
   5: std::panicking::rust_panic_with_hook
             at libstd/panicking.rs:401
   6: std::panicking::begin_panic
   7: rustc_errors::Handler::span_bug
   8: rustc::session::opt_span_bug_fmt::{{closure}}
   9: rustc::ty::context::tls::with_opt::{{closure}}
  10: <std::thread::local::LocalKey<T>>::try_with
  11: <std::thread::local::LocalKey<T>>::with
  12: rustc::ty::context::tls::with
  13: rustc::ty::context::tls::with_opt
  14: rustc::session::opt_span_bug_fmt
  15: rustc::session::span_bug_fmt
  16: rustc_typeck::check::wfcheck::CheckTypeWellFormedVisitor::check_type_defn::{{closure}}::{{closure}}::{{closure}}
  17: rustc_typeck::check::wfcheck::CheckTypeWellFormedVisitor::check_item_well_formed
  18: <rustc_typeck::check::wfcheck::CheckTypeWellFormedVisitor<'a, 'tcx> as rustc::hir::intravisit::Visitor<'v>>::visit_item
  19: rustc_typeck::check_crate::{{closure}}
  20: rustc_typeck::check_crate
  21: rustc::ty::context::TyCtxt::create_and_enter
  22: rustc_driver::driver::compile_input
  23: rustc_driver::run_compiler

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

note: we would appreciate a bug report: https://github.com/rust-lang/rust/blob/master/CONTRIBUTING.md#bug-reports

note: rustc 1.26.0-nightly (0ff9872b2 2018-02-28) running on x86_64-unknown-linux-gnu

note: compiler flags: -C debuginfo=2 -C incremental -C target-cpu=native --crate-type bin

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-attributesArea: Attributes (`#[…]`, `#![…]`)C-bugCategory: This is a bug.E-needs-testCall for participation: An issue has been fixed and does not reproduce, but no test has been added.I-ICEIssue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️T-compilerRelevant to the compiler team, which will review and decide on the PR/issue.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions