1
0
mirror of https://github.com/golang/go synced 2024-11-18 16:44:43 -07:00
The Go programming language
Go to file
Robert Griesemer b10dfb99c5 go/types: don't mark external package objects as used
Also removes a potential race condition regarding the
used flag of Var objects when type-checking packages
concurrently.

Implementation: Rather than marking all used dot-imported
objects and then deduce which corresponding package was used,
now we consider all dot-imported packages as unused and remove
each package from the unused packages map as objects are used.

Now only objects that can be marked as used have a used field
(variables, labels, and packages).

As a result, the code became cleaner and simpler.

Fixes golang/go#8969.

LGTM=adonovan
R=adonovan
CC=golang-codereviews
https://golang.org/cl/163740043
2014-10-23 09:39:20 -07:00
astutil go.tools/astutil: delete all matching imports in DeleteImport 2014-08-14 11:51:51 -07:00
blog go.tools/blog: strip prefix when serving static content 2013-11-08 13:28:32 +11:00
cmd cmd/digraph: digraph: a UNIX-style utility command for common operations on directed graphs in text format. 2014-10-23 09:13:39 -04:00
container/intsets container/intsets: add benchmark of AppendTo method. 2014-06-19 14:35:37 -04:00
cover go.tools/cover: split parsing code out from cmd/cover 2013-12-03 20:55:21 -08:00
dashboard dashboard: update update script to delete Commit.PerfResult 2014-10-22 17:44:46 +04:00
go go/types: don't mark external package objects as used 2014-10-23 09:39:20 -07:00
godoc cmd/godoc: do not apply package path restrictions onto GOROOT when indexing. 2014-10-23 09:34:01 -07:00
imports go.tools/imports: Permit fix_test.go to work pre-Go 1.4. 2014-10-13 08:44:37 +11:00
oracle go.tools/oracle: consider calls to close a peer operation. 2014-10-12 15:08:28 +01:00
playground go.tools/playground: return a better message for code starting with a shebang on non local mode 2014-08-01 15:04:49 -07:00
present go.tools/present: add support for figure captions 2014-07-15 08:23:16 -07:00
refactor refactor/rename: use filepath.ToSlash everywhere to fix windows tests 2014-10-23 09:45:47 +11:00
.hgignore dashboard: add Cloud Storage upload support to create.go 2014-09-03 21:41:16 -07:00
AUTHORS go.empty: prototype for new subrepository 2012-01-25 14:45:13 -05:00
codereview.cfg codereview: switch defaultcc to golang-codereviews 2013-12-20 10:54:33 -05: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 go.tools/README: minor correction. 2013-10-29 13:20:58 -04:00

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 oracle 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.

To submit changes to this repository, see http://golang.org/doc/contribute.html.