internal/lsp/cmd: print flags when running gopls help
Currently, flags are not being printed when users run `gopls help` because they
never get parsed in Main. This CL fixes that issue.
Updates golang/go#35855
Change-Id: Ic9882d0d2410a0f045aa0ecaa87b36c23eb569fd
Reviewed-on: https://go-review.googlesource.com/c/tools/+/330854
Trust: Jean de Klerk <deklerk@google.com>
Run-TryBot: Jean de Klerk <deklerk@google.com>
gopls-CI: kokoro <noreply+kokoro@google.com>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-by: Robert Findley <rfindley@google.com>
diff --git a/internal/tool/tool.go b/internal/tool/tool.go
index ecf68d7..41ecd4e 100644
--- a/internal/tool/tool.go
+++ b/internal/tool/tool.go
@@ -88,6 +88,7 @@
fmt.Fprintf(s.Output(), "\n\nUsage: %v [flags] %v\n", app.Name(), app.Usage())
app.DetailedHelp(s)
}
+ addFlags(s, reflect.StructField{}, reflect.ValueOf(app))
if err := Run(ctx, app, args); err != nil {
fmt.Fprintf(s.Output(), "%s: %v\n", app.Name(), err)
if _, printHelp := err.(commandLineError); printHelp {