golang.org/x/exp@v0.0.0-20240506185415-9bf2ced13842/apidiff/testdata/variables.go (about) 1 package p 2 3 // old 4 type u1 int 5 6 // both 7 type A int 8 type u2 int 9 10 // simple type changes 11 // old 12 var ( 13 V1 string 14 V3 A 15 V7 <-chan int 16 ) 17 18 // new 19 var ( 20 // i V1: changed from string to []string 21 V1 []string 22 V3 A // OK: same 23 // i V7: changed from <-chan int to chan int 24 V7 chan int 25 ) 26 27 // interface type changes 28 // old 29 var ( 30 V9 interface{ M() } 31 V10 interface{ M() } 32 V11 interface{ M() } 33 ) 34 35 // new 36 var ( 37 // i V9: changed from interface{M()} to interface{} 38 V9 interface{} 39 // i V10: changed from interface{M()} to interface{M(); M2()} 40 V10 interface { 41 M2() 42 M() 43 } 44 // i V11: changed from interface{M()} to interface{M(int)} 45 V11 interface{ M(int) } 46 ) 47 48 // struct type changes 49 // old 50 var ( 51 VS1 struct{ A, B int } 52 VS2 struct{ A, B int } 53 VS3 struct{ A, B int } 54 VS4 struct { 55 A int 56 u1 57 } 58 ) 59 60 // new 61 var ( 62 // i VS1: changed from struct{A int; B int} to struct{B int; A int} 63 VS1 struct{ B, A int } 64 // i VS2: changed from struct{A int; B int} to struct{A int} 65 VS2 struct{ A int } 66 // i VS3: changed from struct{A int; B int} to struct{A int; B int; C int} 67 VS3 struct{ A, B, C int } 68 VS4 struct { 69 A int 70 u2 71 } 72 )