internal/lsp: fix badly formatted error messages from go vet

Fixes golang/go#31494

Change-Id: Id65e0daaa67a9fe955b7586af82e4433762cd56c
Reviewed-on: https://go-review.googlesource.com/c/tools/+/172398
Run-TryBot: Rebecca Stambler <rstambler@golang.org>
Reviewed-by: Ian Cottrell <iancottrell@google.com>
diff --git a/internal/lsp/source/diagnostics.go b/internal/lsp/source/diagnostics.go
index 9e35cb3..6c76670 100644
--- a/internal/lsp/source/diagnostics.go
+++ b/internal/lsp/source/diagnostics.go
@@ -112,11 +112,10 @@
 		if diag.Category != "" {
 			category += "." + category
 		}
-
 		reports[s.URI()] = append(reports[s.URI()], Diagnostic{
 			Source:   category,
 			Span:     s,
-			Message:  fmt.Sprintf(diag.Message),
+			Message:  diag.Message,
 			Severity: SeverityWarning,
 		})
 	})
diff --git a/internal/lsp/testdata/analyzer/bad_test.go b/internal/lsp/testdata/analyzer/bad_test.go
index d10ff81..823eeca 100644
--- a/internal/lsp/testdata/analyzer/bad_test.go
+++ b/internal/lsp/testdata/analyzer/bad_test.go
@@ -10,7 +10,7 @@
 	var x sync.Mutex
 	_ = x //@diag("x", "copylocks", "assignment copies lock value to _: sync.Mutex")
 
-	printfWrapper("%s") //@diag("printfWrapper", "printf", "printfWrapper format %!s(MISSING) reads arg #1, but call has 0 args")
+	printfWrapper("%s") //@diag("printfWrapper", "printf", "printfWrapper format %s reads arg #1, but call has 0 args")
 }
 
 func printfWrapper(format string, args ...interface{}) {