From 6efde9677d48f7360ef407e6000252f791c656af Mon Sep 17 00:00:00 2001 From: Dave Cunningham Date: Thu, 15 Mar 2018 13:47:22 -0400 Subject: [PATCH] Handle base case of cloneForSpec --- ast/clone.go | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/ast/clone.go b/ast/clone.go index faa76f0..84ca861 100644 --- a/ast/clone.go +++ b/ast/clone.go @@ -25,9 +25,11 @@ import ( func cloneForSpec(specPtr *ForSpec) { clone(&specPtr.Expr) oldOuter := specPtr.Outer - specPtr.Outer = new(ForSpec) - *specPtr.Outer = *oldOuter - cloneForSpec(specPtr.Outer) + if oldOuter != nil { + specPtr.Outer = new(ForSpec) + *specPtr.Outer = *oldOuter + cloneForSpec(specPtr.Outer) + } for i := range specPtr.Conditions { clone(&specPtr.Conditions[i].Expr) }