Your IP : 172.28.240.42


Current Path : /usr/local/go/src/cmd/go/testdata/script/
Upload File :
Current File : //usr/local/go/src/cmd/go/testdata/script/list_issue_59905.txt

# Expect no panic
go list -f '{{if .DepsErrors}}{{.DepsErrors}}{{end}}' -export -e -deps
cmpenv stdout wanterr_59905

# Expect no panic (Issue 61816)
cp level1b_61816.txt level1b/pkg.go
go list -f '{{if .DepsErrors}}{{.DepsErrors}}{{end}}' -export -e -deps
cmpenv stdout wanterr_61816

-- wanterr_59905 --
[# test/main/level1a
level1a${/}pkg.go:5:2: level2x redeclared in this block
	level1a${/}pkg.go:4:2: other declaration of level2x
level1a${/}pkg.go:5:2: "test/main/level1a/level2y" imported as level2x and not used
level1a${/}pkg.go:8:39: undefined: level2y
 # test/main/level1b
level1b${/}pkg.go:5:2: level2x redeclared in this block
	level1b${/}pkg.go:4:2: other declaration of level2x
level1b${/}pkg.go:5:2: "test/main/level1b/level2y" imported as level2x and not used
level1b${/}pkg.go:8:39: undefined: level2y
]
-- wanterr_61816 --
[level1b${/}pkg.go:4:2: package foo is not in std ($GOROOT${/}src${/}foo)]
[# test/main/level1a
level1a${/}pkg.go:5:2: level2x redeclared in this block
	level1a${/}pkg.go:4:2: other declaration of level2x
level1a${/}pkg.go:5:2: "test/main/level1a/level2y" imported as level2x and not used
level1a${/}pkg.go:8:39: undefined: level2y
 level1b${/}pkg.go:4:2: package foo is not in std ($GOROOT${/}src${/}foo)]
-- level1b_61816.txt --
package level1b

import (
	"foo"
)

func Print() { println(level2x.Value, level2y.Value) }

-- go.mod --
module test/main

go 1.20
-- main.go --
package main

import (
	"test/main/level1a"
	"test/main/level1b"
)

func main() {
	level1a.Print()
	level1b.Print()
}
-- level1a/pkg.go --
package level1a

import (
	"test/main/level1a/level2x"
	"test/main/level1a/level2y"
)

func Print() { println(level2x.Value, level2y.Value) }
-- level1a/level2x/pkg.go --
package level2x

var Value = "1a/2x"
-- level1a/level2y/pkg.go --
package level2x

var Value = "1a/2y"
-- level1b/pkg.go --
package level1b

import (
	"test/main/level1b/level2x"
	"test/main/level1b/level2y"
)

func Print() { println(level2x.Value, level2y.Value) }
-- level1b/level2x/pkg.go --
package level2x

var Value = "1b/2x"
-- level1b/level2y/pkg.go --
package level2x

var Value = "1b/2y"