1 # Test the work and tool patterns in a per-package flag
2
3 go build -n '-gcflags=work=-fakeflag' example.com/foo/a
4 stderr 'compile.*-p example.com/foo/a.*-fakeflag'
5 ! stderr 'compile.*-p example.com/dep.*-fakeflag'
6
7 go build -n '-gcflags=tool=-fakeflag' example.com/foo/a example.com/dep/tooldep
8 ! stderr 'compile.*-p example.com/foo/a.*-fakeflag'
9 ! stderr 'compile.*-p example.com/dep.*-fakeflag'
10 stderr 'compile.*-p main.*-fakeflag.*main.go'
11
12 -- go.mod --
13 module example.com/foo
14
15 go 1.24
16
17 tool example.com/dep/tooldep
18
19 require example.com/dep v1.0.0
20
21 replace example.com/dep => ./dep
22 -- a/a.go --
23 package a
24
25 import _ "example.com/dep"
26 -- dep/go.mod --
27 module example.com/dep
28
29 go 1.24
30 -- dep/dep.go --
31 package dep
32 -- dep/tooldep/main.go --
33 package main
34
35 import _ "example.com/dep"
36
View as plain text