Hi all, I'm having a very hard time with golang.org/x/tools/go/packages. Spent most of my evening yesterday trying to understand what's happening here. Here's my code: https://play.golang.com/p/5L1N0lSaetB
With this very simple code I would expect that the program prints detailed information about the package path I run it with. But whatever the package, or module, I try to use this with, the program is killed because it takes all the memory (~32GB) of my machine in a few seconds, nothing ever gets printed... Here's my config: GO111MODULE="" GOARCH="amd64" GOBIN="" GOCACHE="/home/michel/.cache/go-build" GOENV="/home/michel/.config/go/env" GOEXE="" GOFLAGS="" GOHOSTARCH="amd64" GOHOSTOS="linux" GOINSECURE="" GOMODCACHE="/home/michel/.go/pkg/mod" GONOPROXY="" GONOSUMDB="" GOOS="linux" GOPATH="/home/michel/.go" GOPRIVATE="" GOPROXY="https://proxy.golang.org,direct" GOROOT="/usr/local/go" GOSUMDB="sum.golang.org" GOTMPDIR="" GOTOOLDIR="/usr/local/go/pkg/tool/linux_amd64" GOVCS="" GOVERSION="go1.16" GCCGO="gccgo" AR="ar" CC="gcc" CXX="g++" CGO_ENABLED="1" GOMOD="/dev/null" CGO_CFLAGS="-g -O2" CGO_CPPFLAGS="" CGO_CXXFLAGS="-g -O2" CGO_FFLAGS="-g -O2" CGO_LDFLAGS="-g -O2" PKG_CONFIG="pkg-config" GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build3825502007=/tmp/go-build -gno-record-gcc-switches" I have tried many, many things yesterday, including: - changing the `Mode` in the config - using go/types directly ("can't find import" for the package I'm look to parse) - using different importers - trying to load and parse different packages - ... For context, and to avoid any XY problem here, my goal is to parse a package and find an interface based on its name. Once this interface is found, I need to range over its method set and generate a structure implementing this interface, with (maybe not at the beginning but) a lot of logic, e.g. detect that an interface returns an implementation of itself, and so on. I'm working on a tool to generate mock structures from their interface method set, as a personal project, and this is kind of the most important part of it (being able to automatically generate the mock). If anyone would kindly help me find what I'm doing wrong, or at least point me to useful resources explaining how to fix my problem, I would be reaaaaaally delighted. This has been a problem for days now... And I can't find any relevant issue or blog as this is a peculiar context. Thanks in advance to all that will read this and have a nice day! :D -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/golang-nuts/CAL4P9zzu%2BPcWH%2BkPhTAEgQojjnKHiM_0xm9FJGv%3DfaN2yLCSbg%40mail.gmail.com.