# DO NOT EDIT; generated by go run testdata/gen.go
#
#name: comprehension and skipped field
#bug: true
#evalFull
-- in.cue --

for key, value in {x: v: 1} {
	"\(key)": {
		v:  *{for pod, _ in value.v {}} | {"\(value.v)": 2}
		_p: 3
	}
}
-- out/def --
x: {
	v: {
		"1": 2
	}
	_p: 3
}
-- out/export --
x: {
	v: {
		"1": 2
	}
}
-- out/yaml --
x:
  v:
    "1": 2
-- out/json --
-- out/legacy-debug --
<0>{x: <1>{v: <2>{"1": 2}, _p: 3}}
-- out/compile --
--- in.cue
{
  for key, value in {
    x: {
      v: 1
    }
  } {
    "\(〈1;key〉)": {
      v: (*{
        for pod, _ in 〈3;value〉.v {}
      }|{
        "\(〈3;value〉.v)": 2
      })
      _p: 3
    }
  }
}
-- out/eval --
(struct){
  x: (struct){
    v: (struct){
      "1": (int){ 2 }
    }
    _p: (int){ 3 }
  }
}
