-- in.cue --
X=a: int
b:   a
c:   X
-- out/resolve/in --
4[X]:   Scope: 0[<nil>]     Node: 0[]
5[a]:   Scope: 0[<nil>]     Node: 0[]
6[int]: Scope: 0[<nil>]     Node: 0[]
8[b]:   Scope: 0[<nil>]     Node: 0[]
9[a]:   Scope: 1[*ast.File] Node: 6[int]
11[c]:  Scope: 0[<nil>]     Node: 0[]
12[X]:  Scope: 1[*ast.File] Node: 2[X=a: int]
-- dynamic.cue --
X=("foo"): int
Y="\(X)":  string
a:         X
b:         Y
-- out/resolve/dynamic --
4[X]:       Scope: 0[<nil>]     Node: 0[]
5[int]:     Scope: 0[<nil>]     Node: 0[]
8[Y]:       Scope: 0[<nil>]     Node: 0[]
9[X]:       Scope: 1[*ast.File] Node: 2[X=("foo"): int]
10[string]: Scope: 0[<nil>]     Node: 0[]
12[a]:      Scope: 0[<nil>]     Node: 0[]
13[X]:      Scope: 1[*ast.File] Node: 2[X=("foo"): int]
15[b]:      Scope: 0[<nil>]     Node: 0[]
16[Y]:      Scope: 1[*ast.File] Node: 6[Y="\(X)": string]
