You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I tried to compile the packages of the cfa repository which depend on the llir/llvm module at version v0.3.0-pre1. Doing so, resulted in a compile time error, as the incorrect version of the llir/ll dependency of llir/llvm was downloaded, even though it was specified in the go.mod file of v0.3.0-pre1 of llir/llvm:
An extract of the error output reveals that the version of llir/ll downloaded by the module-aware go get does not contain a definition of ast.AliasDef. However, rev llir/ll@5eef211 of llir/ll contains a definition of ast.AliasDef, so we may conclude that the incorrect version was downloaded.
This seems to be working as designed. The dependency via github.com/llir/llvm is as you say, but you also have a higher requirement via github.com/graphism/exp.
In general, you should be able to use go mod graph to diagnose these sorts of issues:
cfa$ go mod graph | grep 'llir/ll@'
github.com/llir/[email protected] github.com/llir/[email protected]
github.com/llir/[email protected] github.com/inspirer/[email protected]
github.com/graphism/[email protected] github.com/llir/[email protected]
github.com/llir/[email protected] github.com/inspirer/[email protected]
cfa$ go mod why -m github.com/graphism/exp
# github.com/graphism/exp
github.com/mewmew/cfa/cmd/ll2go_interval
github.com/graphism/exp/cfg
Perhaps we should also have a go mod why mode to query “why this version?” rather than just “why this [package / module]?”. I'll file that separately.
What version of Go are you using (
go version
)?Does this issue reproduce with the latest release?
Yes
What operating system and processor architecture are you using (
go env
)?go env
OutputWhat did you do?
I tried to compile the packages of the cfa repository which depend on the llir/llvm module at version v0.3.0-pre1. Doing so, resulted in a compile time error, as the incorrect version of the llir/ll dependency of
llir/llvm
was downloaded, even though it was specified in thego.mod
file ofv0.3.0-pre1
ofllir/llvm
:From llir/[email protected]/go.mod:
From mewmew/cfa/go.mod:
An extract of the error output reveals that the version of
llir/ll
downloaded by the module-awarego get
does not contain a definition ofast.AliasDef
. However, rev llir/ll@5eef211 ofllir/ll
contains a definition ofast.AliasDef
, so we may conclude that the incorrect version was downloaded.Error message from
go get
From https://github.com/llir/ll/blob/5eef2118d0e091289d0d5f8d69816185550acdf3/ast/ast.go#L1670:
To reproduce, run the following set of commands:
The output of which is as follows, and contains the compile time error mentioned above.
go get -v ./...
OutputWhat did you expect to see?
Successful compilation.
What did you see instead?
The compile error detailed above.
The text was updated successfully, but these errors were encountered: