# DO NOT EDIT; generated by go run testdata/gen.go
#
#name: issue312
#evalFull
-- in.cue --

for x in [1] {
	*close({}) | {[_]: null}
}
-- out/def --

for x in [1] *close({}) | {
	[string]: null
}
-- out/export --

-- out/yaml --
{}
-- out/json --
{}
-- out/legacy-debug --
<0>{ <1>for _, x in [1] yield <2>{}, (*close (<3>{}) | <4>{[]: <5>(_: string)->null, })}
-- out/eval --
(struct){ |(*(#struct){
  }, (struct){
  }) }
-- out/compile --
--- in.cue
{
  for _, x in [
    1,
  ] {
    (*close({})|{
      [_]: null
    })
  }
}
