-------------------------------------------------------------------------------- -------------------------------------------------------------------------------- -------------------------------------------------------------------------------- Error: Error: -------------------------------------------------------------------------------- Error: Error: -------------------------------------------------------------------------------- more_env: [(env_pair name: s val: (word.CompoundWord parts:[(word_part.LiteralPart token:(token id:Lit_Chars val:1 span_id:1))]) spids: [0] )] assign_pair: (assign_pair lhs: (lhs_expr.LhsName name:s spids:[0]) op: Equal rhs: (word.CompoundWord parts:[(word_part.LiteralPart token:(token id:Lit_Chars val:1 span_id:1))]) spids: [0] ) -------------------------------------------------------------------------------- Error: assign_pair: (assign_pair lhs: (lhs_expr.LhsIndexedName name: a index: (arith_expr.ArithVarRef token:(token id:Lit_ArithVarLike val:x span_id:0)) spids: [0] ) op: Equal rhs: (word.CompoundWord parts:[(word_part.LiteralPart token:(token id:Lit_Chars val:1 span_id:3))]) spids: [0] ) -------------------------------------------------------------------------------- Error: assign_pair: (assign_pair lhs: (lhs_expr.LhsIndexedName name: a index: (arith_expr.ArithVarRef token:(token id:Lit_ArithVarLike val:x span_id:0)) spids: [0] ) op: PlusEqual rhs: (word.CompoundWord parts:[(word_part.LiteralPart token:(token id:Lit_Chars val:1 span_id:3))]) spids: [0] ) -------------------------------------------------------------------------------- Error: assign_pair: (assign_pair lhs: (lhs_expr.LhsIndexedName name: a index: (arith_expr.UnaryAssign op_id:Node_PostDPlus child:(lhs_expr.LhsName name:x spids:[0])) spids: [0] ) op: PlusEqual rhs: (word.CompoundWord parts:[(word_part.LiteralPart token:(token id:Lit_Chars val:1 span_id:5))]) spids: [0] ) -------------------------------------------------------------------------------- more_env: [(env_pair name: a val: (word.CompoundWord parts: [ (word_part.ArrayLiteralPart words: [ (word.CompoundWord parts: [(word_part.LiteralPart token:(token id:Lit_Chars val:1 span_id:2))] ) (word.CompoundWord parts: [(word_part.LiteralPart token:(token id:Lit_Chars val:2 span_id:4))] ) (word.CompoundWord parts: [(word_part.LiteralPart token:(token id:Lit_Chars val:3 span_id:6))] ) ] ) ] ) spids: [0] )] assign_pair: (assign_pair lhs: (lhs_expr.LhsName name:a spids:[0]) op: Equal rhs: (word.CompoundWord parts: [ (word_part.ArrayLiteralPart words: [ (word.CompoundWord parts: [(word_part.LiteralPart token:(token id:Lit_Chars val:1 span_id:2))] ) (word.CompoundWord parts: [(word_part.LiteralPart token:(token id:Lit_Chars val:2 span_id:4))] ) (word.CompoundWord parts: [(word_part.LiteralPart token:(token id:Lit_Chars val:3 span_id:6))] ) ] ) ] ) spids: [0] ) -------------------------------------------------------------------------------- Error: assign_pair: (assign_pair lhs: (lhs_expr.LhsIndexedName name: a index: (arith_expr.ArithVarRef token:(token id:Lit_ArithVarLike val:x span_id:0)) spids: [0] ) op: Equal rhs: (word.EmptyWord) spids: [0] ) -------------------------------------------------------------------------------- more_env: [(env_pair name: s val: (word.CompoundWord parts: [(word_part.LiteralPart token:(token id:Lit_TildeLike val:'~foo' span_id:1))] ) spids: [0] )] assign_pair: (assign_pair lhs: (lhs_expr.LhsName name:s spids:[0]) op: Equal rhs: (word.CompoundWord parts: [(word_part.TildeSubPart token:(token id:Lit_TildeLike val:'~foo' span_id:1))] ) spids: [0] ) -------------------------------------------------------------------------------- Error: assign_pair: (assign_pair lhs: (lhs_expr.LhsIndexedName name: a index: (arith_expr.ArithVarRef token:(token id:Lit_ArithVarLike val:x span_id:0)) spids: [0] ) op: Equal rhs: (word.CompoundWord parts: [(word_part.TildeSubPart token:(token id:Lit_TildeLike val:'~' span_id:3))] ) spids: [0] ) . ---------------------------------------------------------------------- Ran 1 test in 0.009s OK ('\n---', 'foobar') {(foobar)} None None 0 ('\n---', 'a[x') {(Lit_ArrayLhsOpen 'a[') (x)} None None 0 ('\n---', 'a[]=$foo$bar') {(Lit_ArrayLhsOpen 'a[') (Lit_ArrayLhsClose ']=') ($ VSub_DollarName '$foo') ($ VSub_DollarName '$bar') } (token id:Lit_ArrayLhsOpen val:'a[' span_id:0) (token id:Lit_ArrayLhsClose val:']=' span_id:1) 2 ('\n---', 'a[]+=$foo$bar') {(Lit_ArrayLhsOpen 'a[') (Lit_ArrayLhsClose ']+=') ($ VSub_DollarName '$foo') ($ VSub_DollarName '$bar') } (token id:Lit_ArrayLhsOpen val:'a[' span_id:0) (token id:Lit_ArrayLhsClose val:']+=' span_id:1) 2 ('\n---', 's=1') {(Lit_VarLike 's=') (1)} (token id:Lit_VarLike val:'s=' span_id:0) None 1 ('\n---', 's+=1') {(Lit_VarLike 's+=') (1)} (token id:Lit_VarLike val:'s+=' span_id:0) None 1 ('\n---', 'a[x]=1') {(Lit_ArrayLhsOpen 'a[') (x) (Lit_ArrayLhsClose ']=') (1)} (token id:Lit_ArrayLhsOpen val:'a[' span_id:0) (token id:Lit_ArrayLhsClose val:']=' span_id:2) 3 ('\n---', 'a[x]+=1') {(Lit_ArrayLhsOpen 'a[') (x) (Lit_ArrayLhsClose ']+=') (1)} (token id:Lit_ArrayLhsOpen val:'a[' span_id:0) (token id:Lit_ArrayLhsClose val:']+=' span_id:2) 3 ('\n---', 'a[x++]+=1') {(Lit_ArrayLhsOpen 'a[') (x) (Lit_Other '+') (Lit_Other '+') (Lit_ArrayLhsClose ']+=') (1)} (token id:Lit_ArrayLhsOpen val:'a[' span_id:0) (token id:Lit_ArrayLhsClose val:']+=' span_id:4) 5 ('\n---', 'a=(1 2 3)') {(Lit_VarLike 'a=') (word_part.ArrayLiteralPart words:[{(1)} {(2)} {(3)}])} (token id:Lit_VarLike val:'a=' span_id:0) None 1 ('\n---', 'a+=(1 2 3)') {(Lit_VarLike 'a+=') (word_part.ArrayLiteralPart words:[{(1)} {(2)} {(3)}])} (token id:Lit_VarLike val:'a+=' span_id:0) None 1 ('\n---', 's=') {(Lit_VarLike 's=')} (token id:Lit_VarLike val:'s=' span_id:0) None 1 ('\n---', 'a[x]=') {(Lit_ArrayLhsOpen 'a[') (x) (Lit_ArrayLhsClose ']=')} (token id:Lit_ArrayLhsOpen val:'a[' span_id:0) (token id:Lit_ArrayLhsClose val:']=' span_id:2) 3 ('\n---', 's=~foo') {(Lit_VarLike 's=') (Lit_TildeLike '~foo')} (token id:Lit_VarLike val:'s=' span_id:0) None 1 ('\n---', 'a[x]=~') {(Lit_ArrayLhsOpen 'a[') (x) (Lit_ArrayLhsClose ']=') (Lit_TildeLike '~')} (token id:Lit_ArrayLhsOpen val:'a[' span_id:0) (token id:Lit_ArrayLhsClose val:']=' span_id:2) 3