From ab26b46efa8ce29d880a66884cb20d844dfd2fdc Mon Sep 17 00:00:00 2001 From: John Kerl Date: Mon, 4 Jan 2021 21:34:45 -0500 Subject: [PATCH] fix indexed assignment for heterogeneous data --- go/src/miller/dsl/cst/lvalues.go | 3 +++ 1 file changed, 3 insertions(+) diff --git a/go/src/miller/dsl/cst/lvalues.go b/go/src/miller/dsl/cst/lvalues.go index bf435e2f4..8e3e62491 100644 --- a/go/src/miller/dsl/cst/lvalues.go +++ b/go/src/miller/dsl/cst/lvalues.go @@ -869,6 +869,9 @@ func (this *IndexedLvalueNode) Assign( for i, indexEvaluable := range this.indexEvaluables { index := indexEvaluable.Evaluate(state) indices[i] = &index + if index.IsAbsent() { + return nil + } } // This lets the user do '$y[ ["a", "b", "c"] ] = $x' in lieu of