Closed
Description
Given the following source code in both release 1.35.0
and 1.36.0-nightly (e305df184 2019-04-24)
, I encounter an internal compiler error using nalgebra 0.18.0.
The code is probably not legal to begin with as I ran into it as I was moving from my own homebrewn math code to nalgebra. I have the impression that the compiler probably shouldn't ICE regardless of what junk you feed it, so I'm still reporting this.
use nalgebra::Vector3;
#[derive(Debug, Clone, Copy)]
#[repr(C, packed)]
struct Vertex {
pos: Vector3<f32>,
clr: Vector3<f32>,
}
Build output from cargo +nightly build
:
Compiling nalgebra v0.18.0
Compiling nalgebra-repro v0.1.0 (F:\Temp\nalgebra-repro)
error: internal compiler error: inference variables in nalgebra::base::matrix::Matrix<f32, nalgebra::base::dimension::U3, nalgebra::base::dimension::U1, nalgebra::base::array_storage::ArrayStorage<_, _, _>>
--> src\lib.rs:5:1
|
5 | / struct Vertex {
6 | | pos: Vector3<f32>,
7 | | clr: Vector3<f32>,
8 | | }
| |_^
thread 'rustc' panicked at 'no errors encountered even though `delay_span_bug` issued', src\librustc_errors\lib.rs:355:17
note: Run with `RUST_BACKTRACE=1` environment variable to display a backtrace.
error: internal compiler error: unexpected panic
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.36.0-nightly (e305df184 2019-04-24) running on x86_64-pc-windows-msvc
note: compiler flags: -C debuginfo=2 -C incremental --crate-type lib
note: some of the compiler flags provided by cargo are hidden
error: Could not compile `nalgebra-repro`.
To learn more, run the command again with --verbose.
I unfortunately do not have a newer nightly to test with due to the lack of a more recent RLS blocking the rustup attempt.