-- in.cue --
#A: {
	a:      "foo"
	"\(a)": 3
}
#B: a: b: {
	c: string
	d: 2
}

#C: a: b: {
	c:   *"d" | string
	(c): 2
}

x: #B & #C
-- evalv3regress.cue --
chained: x: {
	// TODO: add this once the todo is fixed.
	// @test(permute)
	(a.b):     "foo"
	(x.hello): "true"
	a: b: "hello"
}
-- out/compile --
--- evalv3regress.cue
{
  chained: {
    x: {
      〈0;a〉.b: "foo"
      〈1;x〉.hello: "true"
      a: {
        b: "hello"
      }
    }
  }
}
--- in.cue
{
  #A: {
    a: "foo"
    "\(〈0;a〉)": 3
  }
  #B: {
    a: {
      b: {
        c: string
        d: 2
      }
    }
  }
  #C: {
    a: {
      b: {
        c: (*"d"|string)
        〈0;c〉: 2
      }
    }
  }
  x: (〈0;#B〉 & 〈0;#C〉)
}
