X-Git-Url: https://git.josue.xyz/?a=blobdiff_plain;f=.config%2Fcoc%2Fextensions%2Fcoc-go-data%2Ftools%2Fpkg%2Fmod%2Fgolang.org%2Fx%2Ftools%40v0.0.0-20201105173854-bc9fc8d8c4bc%2Fgo%2Fssa%2Finterp%2Ftestdata%2Finitorder.go;fp=.config%2Fcoc%2Fextensions%2Fcoc-go-data%2Ftools%2Fpkg%2Fmod%2Fgolang.org%2Fx%2Ftools%40v0.0.0-20201105173854-bc9fc8d8c4bc%2Fgo%2Fssa%2Finterp%2Ftestdata%2Finitorder.go;h=0000000000000000000000000000000000000000;hb=3ddadb3c98564791f0ac36cb39771d844a63dc91;hp=0f26bed695558c4e68853a9967c6716d4f5e06a5;hpb=5f797af6612ed10887189b47a1efc2f915586e59;p=dotfiles%2F.git diff --git a/.config/coc/extensions/coc-go-data/tools/pkg/mod/golang.org/x/tools@v0.0.0-20201105173854-bc9fc8d8c4bc/go/ssa/interp/testdata/initorder.go b/.config/coc/extensions/coc-go-data/tools/pkg/mod/golang.org/x/tools@v0.0.0-20201105173854-bc9fc8d8c4bc/go/ssa/interp/testdata/initorder.go deleted file mode 100644 index 0f26bed6..00000000 --- a/.config/coc/extensions/coc-go-data/tools/pkg/mod/golang.org/x/tools@v0.0.0-20201105173854-bc9fc8d8c4bc/go/ssa/interp/testdata/initorder.go +++ /dev/null @@ -1,67 +0,0 @@ -package main - -import "fmt" - -// Test of initialization order of package-level vars. - -var counter int - -func next() int { - c := counter - counter++ - return c -} - -func next2() (x int, y int) { - x = next() - y = next() - return -} - -func makeOrder() int { - _, _, _, _ = f, b, d, e - return 0 -} - -func main() { - // Initialization constraints: - // - {f,b,c/d,e} < order (ref graph traversal) - // - order < {a} (lexical order) - // - b < c/d < e < f (lexical order) - // Solution: a b c/d e f - abcdef := [6]int{a, b, c, d, e, f} - if abcdef != [6]int{0, 1, 2, 3, 4, 5} { - panic(abcdef) - } -} - -var order = makeOrder() - -var a, b = next(), next() -var c, d = next2() -var e, f = next(), next() - -// ------------------------------------------------------------------------ - -var order2 []string - -func create(x int, name string) int { - order2 = append(order2, name) - return x -} - -var C = create(B+1, "C") -var A, B = create(1, "A"), create(2, "B") - -// Initialization order of package-level value specs. -func init() { - x := fmt.Sprint(order2) - // Result varies by toolchain. This is a spec bug. - if x != "[B C A]" && // gc - x != "[A B C]" { // go/types - panic(x) - } - if C != 3 { - panic(c) - } -}