about summary refs log tree commit diff
path: root/tests/incremental/print-dep-node-cycle.rs
blob: 931d3da521e5c4013253e259f1fd0607ddd44d6a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
//@ compile-flags: -Z query-dep-graph
//@ revisions: rpass1

// Exercises a debug-assertions-only query cycle that when printing a valtree const in
// a dep node's debug representation, we end up invoking a query that also has a valtree
// const in its dep node's debug representation, which leads to a cycle (and ICE, since
// deps are not tracked when printing dep nodes' debug representations).

#![feature(adt_const_params)]

use std::marker::ConstParamTy;

#[derive(Debug, ConstParamTy, PartialEq, Eq)]
enum Foo {
    A1,
}

#[inline(never)]
fn hello<const F: Foo>() {
    println!("{:#?}", F);
}

fn main() {
    hello::<{ Foo::A1 }>();
}