honnef.co/go/tools@v0.4.7/staticcheck/testdata/src/example.com/CheckEncodingBinary/CheckEncodingBinary.go (about)

     1  package pkg
     2  
     3  import (
     4  	"encoding/binary"
     5  	"io"
     6  	"io/ioutil"
     7  	"log"
     8  )
     9  
    10  func fn() {
    11  	type T1 struct {
    12  		A int32
    13  	}
    14  	type T2 struct {
    15  		A int32
    16  		B int
    17  	}
    18  	type T3 struct {
    19  		A []int32
    20  	}
    21  	type T4 struct {
    22  		A *int32
    23  	}
    24  	type T5 struct {
    25  		A int32
    26  	}
    27  	type T6 []byte
    28  
    29  	var x1 int
    30  	var x2 int32
    31  	var x3 []int
    32  	var x4 []int32
    33  	var x5 [1]int
    34  	var x6 [1]int32
    35  	var x7 T1
    36  	var x8 T2
    37  	var x9 T3
    38  	var x10 T4
    39  	var x11 = &T5{}
    40  	var x13 []byte
    41  	var x14 *[]byte
    42  	var x15 T6
    43  	log.Println(binary.Write(ioutil.Discard, binary.LittleEndian, x1)) //@ diag(`cannot be used with binary.Write`)
    44  	log.Println(binary.Write(ioutil.Discard, binary.LittleEndian, x2))
    45  	log.Println(binary.Write(ioutil.Discard, binary.LittleEndian, x3)) //@ diag(`cannot be used with binary.Write`)
    46  	log.Println(binary.Write(ioutil.Discard, binary.LittleEndian, x4))
    47  	log.Println(binary.Write(ioutil.Discard, binary.LittleEndian, x5)) //@ diag(`cannot be used with binary.Write`)
    48  	log.Println(binary.Write(ioutil.Discard, binary.LittleEndian, x6))
    49  	log.Println(binary.Write(ioutil.Discard, binary.LittleEndian, x7))
    50  	log.Println(binary.Write(ioutil.Discard, binary.LittleEndian, x8))  //@ diag(`cannot be used with binary.Write`)
    51  	log.Println(binary.Write(ioutil.Discard, binary.LittleEndian, x9))  //@ diag(`cannot be used with binary.Write`)
    52  	log.Println(binary.Write(ioutil.Discard, binary.LittleEndian, x10)) //@ diag(`cannot be used with binary.Write`)
    53  	log.Println(binary.Write(ioutil.Discard, binary.LittleEndian, x11))
    54  	log.Println(binary.Write(ioutil.Discard, binary.LittleEndian, &x13))
    55  	log.Println(binary.Write(ioutil.Discard, binary.LittleEndian, &x14)) //@ diag(`cannot be used with binary.Write`)
    56  	log.Println(binary.Write(ioutil.Discard, binary.LittleEndian, x15))
    57  	log.Println(binary.Write(ioutil.Discard, binary.LittleEndian, &x15))
    58  	log.Println(binary.Write(fn2())) //@ diag(`cannot be used with binary.Write`)
    59  	log.Println(binary.Write(fn3()))
    60  }
    61  
    62  func fn2() (io.Writer, binary.ByteOrder, int)    { return nil, binary.LittleEndian, 0 }
    63  func fn3() (io.Writer, binary.ByteOrder, uint32) { return nil, binary.LittleEndian, 0 }