Use Case
The use case for warnings is the exploratory development or debugging phases, where you really don't care about leaving unused things lying around for the time being (for example, temporarily commenting something out), and would rather that the compiler just got out of your way until you've got something ready to compile normally and commit.
Usage
go build -gcflags=-warnunused somefile.go
go test -gcflags=-warnunused
When you're done with your exploratory/debugging phase, simply build or test without the flag: go build somefile.go
go test
Compiling without the flags will fail on unused things as normal.