Closed
Description
Note that this code doesn't compile regardless (ast::Decl
contains ast::Expr
by value, which contains an ast::Decl
), but the ICE looks related to incremental compilation, so it might be reproducible under other circumstances.
$ cargo check
Compiling oftb v0.1.0 (file:///home/nathan/Projects/oftlisp/oftb)
warning: unused import: `literal::Literal`
--> src/flatanf/convert.rs:10:5
|
10 | use literal::Literal;
| ^^^^^^^^^^^^^^^^
|
= note: #[warn(unused_imports)] on by default
error[E0391]: unsupported cyclic reference between types/traits detected
--> src/ast/mod.rs:62:1
|
62 | pub enum Decl {
| ^^^^^^^^^^^^^ cyclic reference
|
note: the cycle begins when processing `ast::Decl`...
--> src/ast/mod.rs:62:1
|
62 | pub enum Decl {
| ^^^^^^^^^^^^^
= note: ...which then again requires processing `ast::Decl`, completing the cycle.
error: internal compiler error: /checkout/src/librustc/dep_graph/graph.rs:615: try_mark_green() - Forcing the DepNode should have set its color
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.24.1 (d3ae9a9e0 2018-02-27) running on x86_64-unknown-linux-gnu
thread 'rustc' panicked at 'Box<Any>', /checkout/src/librustc_errors/lib.rs:504:9
note: Run with `RUST_BACKTRACE=1` for a backtrace.
error: Could not compile `oftb`.
To learn more, run the command again with --verbose.