Description
running rustc -Z dump-mir=all src/test/run-pass/issue-33387.rs
yields
error[E0391]: unsupported cyclic reference between types/traits detected
--> ../rust/src/test/run-pass/issue-33387.rs:19:1
|
19 | / impl Foo for [u8; 2] {
20 | | fn get(&self) -> [u8; 2] {
21 | | *self
22 | | }
23 | | }
| |_^ cyclic reference
|
note: the cycle begins when processing `<impl at ../rust/src/test/run-pass/issue-33387.rs:19:1: 23:2>`...
--> ../rust/src/test/run-pass/issue-33387.rs:19:1
|
19 | / impl Foo for [u8; 2] {
20 | | fn get(&self) -> [u8; 2] {
21 | | *self
22 | | }
23 | | }
| |_^
note: ...which then requires const-evaluating `<impl at ../rust/src/test/run-pass/issue-33387.rs:19:1: 23:2>::{{initializer}}`...
--> ../rust/src/test/run-pass/issue-33387.rs:19:19
|
19 | impl Foo for [u8; 2] {
| ^
note: ...which then requires processing `<impl at ../rust/src/test/run-pass/issue-33387.rs:19:1: 23:2>::{{initializer}}`...
--> ../rust/src/test/run-pass/issue-33387.rs:19:19
|
19 | impl Foo for [u8; 2] {
| ^
note: ...which then requires processing `<impl at ../rust/src/test/run-pass/issue-33387.rs:19:1: 23:2>::{{initializer}}`...
--> ../rust/src/test/run-pass/issue-33387.rs:19:19
|
19 | impl Foo for [u8; 2] {
| ^
note: ...which then requires processing `<impl at ../rust/src/test/run-pass/issue-33387.rs:19:1: 23:2>`...
--> ../rust/src/test/run-pass/issue-33387.rs:19:1
|
19 | / impl Foo for [u8; 2] {
20 | | fn get(&self) -> [u8; 2] {
21 | | *self
22 | | }
23 | | }
| |_^
= note: ...which then again requires processing `<impl at ../rust/src/test/run-pass/issue-33387.rs:19:1: 23:2>`, completing the cycle.
Happening on rustc 1.19.0-nightly (777ee2079 2017-05-01)
. Did not happen on the latest nightly available through rustup on 27.04.2017.
Metadata
Metadata
Assignees
Labels
No labels