tools/ssa/interp
Alan Donovan 3d82e7e94a go.tools/ssa: fix crash in SSA builder when using GCImporter to satisfy imports (ssadump -build=G).
Packages were not being created for all types.Packages,
specifically, indirectly imported packages were missing.
(*Program).CreatePackages now iterates over the type-checker's
package map too.

Also: removed all concurrency from importer.  I think it was
incorrect (and hard to fix).

Also: change LoadInitialPackages so that all named packages
are loaded from source.  This happens regardless of whether
GCImporter is used to satisfy imports.

Details:
- importer.Config.SourceImports flag determines whether to
  load all packages from *.go source.
  (Before, this was indicated by Config.Build != nil.)
- importer.Config.Build field effectively defaults to
  &go/build.Default.  A zero importer.Config is now usable.
- importer.Importer.Config field is now exported.
- LoadPackage renamed to ImportPackage since the resulting
  packages may come from GCImporter (and be incomplete).
- doImport and ImportPackage fused.

Fixes golang/go#7028

R=gri, axwalk
CC=golang-codereviews
https://golang.org/cl/48770043
2014-01-09 14:11:54 -05:00
..
testdata go.tools/ssa: a blocking select's implicit "default" case should runtime-panic, not fall through. 2014-01-02 15:12:23 -05:00
external.go go.tools/ssa/interp: fix Plan 9 build for Brad 2013-12-20 15:20:51 -08:00
external_plan9.go go.tools/ssa/interp: fix Plan 9 build for Brad 2013-12-20 15:20:51 -08:00
external_unix.go go.tools/ssa/interp: fix Plan 9 build for Brad 2013-12-20 15:20:51 -08:00
external_windows.go go.tools/ssa/interp: fix Plan 9 build for Brad 2013-12-20 15:20:51 -08:00
interp.go go.tools/ssa: use correct word size for GOARCH during type checking, interpretation. 2014-01-08 14:46:17 -05:00
interp_test.go go.tools/ssa: fix crash in SSA builder when using GCImporter to satisfy imports (ssadump -build=G). 2014-01-09 14:11:54 -05:00
map.go go.tools/ssa/interp: fixes to equivalence relations. 2013-09-16 15:22:19 -04:00
ops.go go.tools/ssa: use correct word size for GOARCH during type checking, interpretation. 2014-01-08 14:46:17 -05:00
reflect.go go.tools/ssa: use correct word size for GOARCH during type checking, interpretation. 2014-01-08 14:46:17 -05:00
value.go go.tools/ssa/interp: improve print() on interfaces, and log message for panic. 2013-11-05 13:03:14 -05:00