error[E0391]: cycle detected when const-evaluating + checking `a` --> $DIR/infinite-recursion-const-fn.rs:3:1 | LL | const fn a() -> usize { | ^^^^^^^^^^^^^^^^^^^^^ | note: ...which requires const-evaluating + checking `b`... --> $DIR/infinite-recursion-const-fn.rs:7:1 | LL | const fn b() -> usize { | ^^^^^^^^^^^^^^^^^^^^^ = note: ...which again requires const-evaluating + checking `a`, completing the cycle note: cycle used when const-evaluating + checking `ARR::{constant#0}` --> $DIR/infinite-recursion-const-fn.rs:10:18 | LL | const ARR: [i32; a()] = [5; 6]; | ^^^ error: aborting due to previous error For more information about this error, try `rustc --explain E0391`.