Skip to content

eval: unexplained incomplete value error vs evalv2 #3763

@myitcv

Description

@myitcv

What version of CUE are you using (cue version)?

$ cue version
cue version v0.0.0-20250217140725-3545df15d578

go version go1.23.5
      -buildmode exe
       -compiler gc
     CGO_ENABLED 1
          GOARCH arm64
            GOOS linux
         GOARM64 v8.0
             vcs git
    vcs.revision 3545df15d578ea77c7463f37d34cbabca36fb05d
        vcs.time 2025-02-17T14:07:25Z
    vcs.modified false
cue.lang.version v0.13.0

Does this issue reproduce with the latest release?

Yes

What did you do?

# -- evalv2 --
env CUE_EXPERIMENT=evalv3=0
exec cue export .
cmp stdout stdout.golden

# -- evalv3 --
env CUE_EXPERIMENT=evalv3=1
env CUE_DEBUG=openinline=0
exec cue export .
cmp stdout stdout.golden

-- x.cue --
package x

_core_v1: {
	#cp: {
		hostPort?: int32
		cp:        int32
	}
}

k: n: n1: {
	_CL: "l"
}

let nc = {
	_ports: [ID=_]: _core_v1.#cp
}

_cl: [ID=_]: nc & {
	_ports: {
		"1": {}
		"2": {}
		"3": {}
	}
}

k: n: [ID=_]: {
	_CL: string
	_cs: (_CL): _cl[(_CL)]
}

for _, n in k.n {
	let cps = [for _, c in n._cs for _, cps in c._ports {cps}]
	ports: [for cp in cps if cp.hostPort != _|_ {
		port: "\(cp.hostPort)"
	}]
}

_cl: l: {}

-- stdout.golden --
{
    "k": {
        "n": {
            "n1": {}
        }
    },
    "ports": []
}

What did you expect to see?

Passing test.

What did you see instead?

# -- evalv2 -- (2.479s)
# -- evalv3 -- (0.498s)
> env CUE_EXPERIMENT=evalv3=1
> exec go run cuelang.org/go/cmd/cue export .
[stderr]
ports: incomplete value list:
    ./x.cue:33:9
exit status 1
[exit status 1]
FAIL: /tmp/testscript1905107241/repro.txtar/script.txtar:11: unexpected command failure

This bisects to https://gerrithub.io/c/cue-lang/cue/+/1206383

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions