aboutsummaryrefslogtreecommitdiffstats
path: root/prog/clone.go
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2017-09-14 19:25:01 +0200
committerDmitry Vyukov <dvyukov@google.com>2017-09-15 16:02:37 +0200
commit52a33fd516102a98d3753bf69417235b655a68dc (patch)
tree351ab73db934d3b4e4babbe27e8801c659f2631b /prog/clone.go
parent25f4fe0662f7f3b390d16b2e786f2ba0aa0293f1 (diff)
prog: remove default target and all global state
Now each prog function accepts the desired target explicitly. No global, implicit state involved. This is much cleaner and allows cross-OS/arch testing, etc.
Diffstat (limited to 'prog/clone.go')
-rw-r--r--prog/clone.go4
1 files changed, 3 insertions, 1 deletions
diff --git a/prog/clone.go b/prog/clone.go
index c0530949e..2253c7e75 100644
--- a/prog/clone.go
+++ b/prog/clone.go
@@ -9,7 +9,9 @@ func (p *Prog) Clone() *Prog {
}
func (p *Prog) cloneImpl(full bool) (*Prog, map[Arg]Arg) {
- p1 := new(Prog)
+ p1 := &Prog{
+ Target: p.Target,
+ }
newargs := make(map[Arg]Arg)
for _, c := range p.Calls {
c1 := new(Call)