Go to file
Muir Manders 775b7fe395 internal/lsp: improve expected type determination
Improve expected type determination for the following cases:

- search back further through ast path to handle cases where the
  position's node is more than two nodes from the ancestor node with
  type information
- generate expected type for return statements
- wrap and unwrap pointerness from expected type when position is
  preceded by "*" (dereference) or "&" (reference) operators,
  respectively
- fix some false positive expected types when completing the "Fun"
  (left) side of a CallExpr

Change-Id: I907ee3e405bd8420031a7b03329de5df1c3493b9
GitHub-Last-Rev: 20a0ac9bf2b5350494c6738f5960676cc50fb454
GitHub-Pull-Request: golang/tools#93
Reviewed-on: https://go-review.googlesource.com/c/tools/+/174477
Run-TryBot: Rebecca Stambler <rstambler@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Rebecca Stambler <rstambler@golang.org>
2019-05-10 20:11:04 +00:00
benchmark/parse benchmark/parse: fix cosmetic defect in error str. 2015-02-02 17:07:43 +00:00
blog godoc,blog: perform minor cleanup 2018-04-14 19:30:04 +00:00
cmd compilebench: handle missing MemStats more gracefully 2019-05-09 00:13:10 +00:00
container/intsets x/tools/container/intsets: add LowerBound 2017-08-21 16:11:21 +00:00
cover cover: handle multiple samples from the same location 2017-12-10 23:11:56 +00:00
go cmd/vet: print help to stdout only 2019-05-10 14:40:52 +00:00
godoc godoc/env: replace with golangorgenv 2019-03-07 16:39:06 +00:00
imports go/packages/packagestest: fix GOPROXY file URLs for Windows 2019-04-25 21:41:24 +00:00
internal internal/lsp: improve expected type determination 2019-05-10 20:11:04 +00:00
playground playground: use stdlib instead of appengine packages 2019-03-07 16:39:23 +00:00
present present: remove mention of non-existing emphasis toggle 2018-10-22 17:16:10 +00:00
refactor cmd/godoc,cmd/gorename,refactor/rename: skip tests on GOOS=android 2019-03-06 15:27:20 +00:00
.gitattributes tools: copying .gitattributes to all subrepositories (fixes windows build) 2014-12-23 06:32:51 +00:00
.gitignore .gitignore: roll back ".gitignore: ignore emacs backup files" 2018-02-13 00:43:28 +00:00
AUTHORS go.empty: prototype for new subrepository 2012-01-25 14:45:13 -05:00
CONTRIBUTING.md CONTRIBUTING.md: remove note about not accepting Pull Requests 2018-03-14 18:02:17 +00:00
CONTRIBUTORS go.empty: prototype for new subrepository 2012-01-25 14:45:13 -05:00
LICENSE LICENSE: add 2012-03-17 15:20:58 +11:00
PATENTS go.empty: add PATENTS file to the subrepo. 2012-04-16 11:24:04 +10:00
README.md README: switch to Markdown and add links 2017-09-27 05:40:07 +00:00
codereview.cfg tools: add codereview.cfg 2015-03-18 17:04:00 +00:00
go.mod all: run go mod tidy 2019-04-23 23:23:28 +00:00
go.sum all: run go mod tidy 2019-04-23 23:23:28 +00:00

README.md

Go Tools

This subrepository holds the source for various packages and tools that support the Go programming language.

Some of the tools, godoc and vet for example, are included in binary Go distributions.

Others, including the Go guru and the test coverage tool, can be fetched with go get.

Packages include a type-checker for Go and an implementation of the Static Single Assignment form (SSA) representation for Go programs.

Download/Install

The easiest way to install is to run go get -u golang.org/x/tools/.... You can also manually git clone the repository to $GOPATH/src/golang.org/x/tools.

Report Issues / Send Patches

This repository uses Gerrit for code changes. To learn how to submit changes to this repository, see https://golang.org/doc/contribute.html.

The main issue tracker for the tools repository is located at https://github.com/golang/go/issues. Prefix your issue with "x/tools/(your subdir):" in the subject line, so it is easy to find.