mirror of
https://github.com/golang/go
synced 2024-11-19 13:24:42 -07:00
cmd/vet: %T is a formatting directive too
Some warnings were being missed, because vet's regex that finds formatting directives was missing the 'T' verb. Fixes #24646. Change-Id: I2f6f9ed19e7daf9a07175199f428a62e94799ea9 Reviewed-on: https://go-review.googlesource.com/111357 Run-TryBot: Daniel Martí <mvdan@mvdan.cc> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Josh Bleecher Snyder <josharian@gmail.com> Reviewed-by: Rob Pike <r@golang.org>
This commit is contained in:
parent
2aef675000
commit
d0ed8d6ea1
@ -721,7 +721,7 @@ const (
|
|||||||
flagsRE = `[+\-#]*`
|
flagsRE = `[+\-#]*`
|
||||||
indexOptRE = `(\[[0-9]+\])?`
|
indexOptRE = `(\[[0-9]+\])?`
|
||||||
numOptRE = `([0-9]+|` + indexOptRE + `\*)?`
|
numOptRE = `([0-9]+|` + indexOptRE + `\*)?`
|
||||||
verbRE = `[bcdefgopqstvxEFGUX]`
|
verbRE = `[bcdefgopqstvxEFGTUX]`
|
||||||
)
|
)
|
||||||
|
|
||||||
// checkPrint checks a call to an unformatted print routine such as Println.
|
// checkPrint checks a call to an unformatted print routine such as Println.
|
||||||
|
1
src/cmd/vet/testdata/print.go
vendored
1
src/cmd/vet/testdata/print.go
vendored
@ -148,6 +148,7 @@ func PrintfTests() {
|
|||||||
fmt.Println() // not an error
|
fmt.Println() // not an error
|
||||||
fmt.Println("%s", "hi") // ERROR "Println call has possible formatting directive %s"
|
fmt.Println("%s", "hi") // ERROR "Println call has possible formatting directive %s"
|
||||||
fmt.Println("%v", "hi") // ERROR "Println call has possible formatting directive %v"
|
fmt.Println("%v", "hi") // ERROR "Println call has possible formatting directive %v"
|
||||||
|
fmt.Println("%T", "hi") // ERROR "Println call has possible formatting directive %T"
|
||||||
fmt.Println("0.0%") // correct (trailing % couldn't be a formatting directive)
|
fmt.Println("0.0%") // correct (trailing % couldn't be a formatting directive)
|
||||||
fmt.Printf("%s", "hi", 3) // ERROR "Printf call needs 1 arg but has 2 args"
|
fmt.Printf("%s", "hi", 3) // ERROR "Printf call needs 1 arg but has 2 args"
|
||||||
_ = fmt.Sprintf("%"+("s"), "hi", 3) // ERROR "Sprintf call needs 1 arg but has 2 args"
|
_ = fmt.Sprintf("%"+("s"), "hi", 3) // ERROR "Sprintf call needs 1 arg but has 2 args"
|
||||||
|
Loading…
Reference in New Issue
Block a user