# Note the proper domain, since the dot adds an edge case. env GOPRIVATE=domain.test/main garble build -ldflags='-X=main.unexportedVersion=v1.0.0 -X=domain.test/main/imported.ExportedVar=replaced' exec ./main cmp stderr main.stderr ! binsubstr main$exe 'unexportedVersion' [short] stop # no need to verify this with -short garble -tiny build -ldflags='-X=main.unexportedVersion=v1.0.0 -X=domain.test/main/imported.ExportedVar=replaced' exec ./main cmp stderr main.stderr ! binsubstr main$exe 'unexportedVersion' exec go build -ldflags='-X=main.unexportedVersion=v1.0.0 -X=domain.test/main/imported.ExportedVar=replaced' exec ./main cmp stderr main.stderr binsubstr main$exe 'unexportedVersion' -- go.mod -- module domain.test/main go 1.15 -- main.go -- package main import ( "domain.test/main/imported" ) var unexportedVersion = "unknown" func main() { println("version:", unexportedVersion) println("var:", imported.ExportedVar) } -- imported/imported.go -- package imported var ExportedVar = "original" -- main.stderr -- version: v1.0.0 var: replaced