# DO NOT EDIT; generated by go run testdata/gen.go
#
#name: json Marshaling detects incomplete
#evalFull
-- in.cue --
import "encoding/json"

a: json.Marshal({a: string})

foo: {a: 3, b: foo.c}
b: json.Marshal(foo)
-- out/def --
import "encoding/json"

a: json.Marshal({
	a: string
})
foo: {
	a: 3
	b: foo.c
}
b: json.Marshal(foo)
-- out/legacy-debug --
<0>{a: <1>.Marshal (<2>{a: string}), foo: <3>{a: 3, b: <4>.foo.c}, b: <1>.Marshal (<4>.foo)}
-- out/eval --
(struct){
  a: (_|_){
    // [incomplete] cannot convert incomplete value "string" to JSON
  }
  foo: (struct){
    a: (int){ 3 }
    b: (_|_){
      // [incomplete] foo.b: undefined field c:
      //     ./in.cue:5:20
    }
  }
  b: (_|_){
    // [incomplete] foo.b: undefined field c:
    //     ./in.cue:5:20
  }
}
-- out/compile --
--- in.cue
{
  a: 〈import;"encoding/json"〉.Marshal({
    a: string
  })
  foo: {
    a: 3
    b: 〈1;foo〉.c
  }
  b: 〈import;"encoding/json"〉.Marshal(〈0;foo〉)
}
