github.com/joomcode/cue@v0.4.4-0.20221111115225-539fe3512047/cue/testdata/references/letcycle.txtar (about) 1 -- in.cue -- 2 cycles: { 3 a: { 4 let A = {c: B} 5 let B = A 6 out: A 7 } 8 9 b: { 10 let A = {c: B} 11 let B = {A.c} 12 out: A 13 } 14 15 issue1042: { 16 #FullAdder: { 17 // IN 18 a: bool 19 b: bool 20 c: bool 21 // OUT 22 sum: bool 23 carry: bool 24 } 25 26 #Add16: { 27 a: [bool] * 16 28 b: [bool] * 16 29 out: [bool] * 16 30 31 let fulladders = [ 32 for i in list.Range(0, 4, 1) { 33 #FullAdder & {"a": a[i], "b": b[i], c: carries[i]} 34 }, 35 ] 36 let carries = [ 37 false, 38 for i in list.Range(0, 4, 1) {fulladders[i].carry}, 39 ] 40 out: [ 41 for i in list.Range(0, 4, 1) {fulladders[i].sum}, 42 ] 43 } 44 } 45 } 46 -- out/compile -- 47 cycles.a.let[].c.c: cyclic references in let clause or alias: 48 ./in.cue:3:15 49 cycles.b.let[].c.c: cyclic references in let clause or alias: 50 ./in.cue:9:15 51 cycles.issue1042.#Add16.let[]: reference "list" not found: 52 ./in.cue:31:14 53 cycles.issue1042.#Add16.let[].for[].c.for[]: reference "list" not found: 54 ./in.cue:31:14 55 cycles.issue1042.#Add16.let[].for[].c.for[].for[].c: cyclic references in let clause or alias: 56 ./in.cue:32:45 57 cycles.issue1042.#Add16.let[]: reference "list" not found: 58 ./in.cue:37:14 59 cycles.issue1042.#Add16.let[].for[].c: reference "list" not found: 60 ./in.cue:37:14 61 cycles.issue1042.#Add16.out: reference "list" not found: 62 ./in.cue:40:14 63 --- in.cue 64 { 65 cycles: { 66 a: { 67 out: 〈0;let A〉 68 } 69 b: { 70 out: 〈0;let A〉 71 } 72 issue1042: { 73 #FullAdder: { 74 a: bool 75 b: bool 76 c: bool 77 sum: bool 78 carry: bool 79 } 80 #Add16: { 81 a: ([ 82 bool, 83 ] * 16) 84 b: ([ 85 bool, 86 ] * 16) 87 out: ([ 88 bool, 89 ] * 16) 90 out: [ 91 for _, i in _|_(reference "list" not found).Range(0, 4, 1) { 92 〈3;let fulladders〉[〈1;i〉].sum 93 }, 94 ] 95 } 96 } 97 } 98 } 99 -- out/eval -- 100 cycles.a.let[].c.c: cyclic references in let clause or alias: 101 ./in.cue:3:15 102 cycles.b.let[].c.c: cyclic references in let clause or alias: 103 ./in.cue:9:15 104 cycles.issue1042.#Add16.let[]: reference "list" not found: 105 ./in.cue:31:14 106 cycles.issue1042.#Add16.let[].for[].c.for[]: reference "list" not found: 107 ./in.cue:31:14 108 cycles.issue1042.#Add16.let[].for[].c.for[].for[].c: cyclic references in let clause or alias: 109 ./in.cue:32:45 110 cycles.issue1042.#Add16.let[]: reference "list" not found: 111 ./in.cue:37:14 112 cycles.issue1042.#Add16.let[].for[].c: reference "list" not found: 113 ./in.cue:37:14 114 cycles.issue1042.#Add16.out: reference "list" not found: 115 ./in.cue:40:14