(CommandList children: [ (AndOr children: [ (SimpleCommand words: [{(builtin)} {(vmstate)}] redirects: [(Redir op_id:Redir_Great fd:2 arg_word:{(/dev/null)} spids:[61])] ) (C {(exit)} {(0)}) ] op_id: Op_DPipe ) (FuncDef name: err_exit body: (BraceGroup children: [ (C {(print)} {(-u2)} {(-n)} {(DQ (EscapedLiteralPart token:<Lit_EscapedChar "\\t">))}) (C {(print)} {(-u2)} {(-r)} {(${ VSub_Name Command) (Lit_Other "[") ($ VSub_Number "$1") (Lit_Other "]") (Lit_Other ":") } { (DQ (BracedVarSub token: <VSub_At "@"> suffix_op: (Slice begin:(ArithWord w:{(Lit_Digits 2)})) spids: [104 108] ) ) } ) (C {(let)} {(Lit_VarLike "Errors+=") (1)}) ] spids: [75] ) spids: [71 74] ) (C {(alias)} {(Lit_VarLike "err_exit=") (SQ <"err_exit $LINENO">)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:Command) op: Equal rhs: { (BracedVarSub token: <VSub_Number 0> suffix_op: (StringUnary op_id:VOp1_DPound arg_word:{("*") (Lit_Slash /)}) spids: [128 133] ) } spids: [127] ) ] spids: [127] ) (C {(integer)} {(Lit_VarLike "Errors=") (0)}) (FuncDef name: test_reset body: (BraceGroup children: [ (C {(integer)} {(i)} {(Lit_VarLike "n=") ($ VSub_Number "$1")}) (ForExpr init: (BinaryAssign op_id: Arith_Equal left: (LhsName name:i) right: (ArithWord w:{(Lit_Digits 0)}) ) cond: (ArithBinary op_id: Arith_Less left: (ArithVarRef name:i) right: (ArithVarRef name:n) ) update: (UnaryAssign op_id:Node_PostDPlus child:(LhsName name:i)) body: (DoGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:u) op: Equal rhs: {($ VSub_Name "$i")} spids: [186] ) ] spids: [186] ) ] spids: [184 190] ) ) ] spids: [149] ) spids: [145 148] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:n) op:Equal rhs:{(1000)} spids:[195])] spids: [195] ) (C {(test_reset)} {($ VSub_Name "$n")}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:a) op: Equal rhs: {(0) (CommandSubPart command_list: (CommandList children: [(C {(vmstate)} {(--format) (Lit_Other "=") (SQ <"+%(size)u">)})] ) left_token: <Left_CommandSub "$("> spids: [209 217] ) } spids: [207] ) ] spids: [207] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:b) op: Equal rhs: {(0) (CommandSubPart command_list: (CommandList children: [(C {(vmstate)} {(--format) (Lit_Other "=") (SQ <"+%(size)u">)})] ) left_token: <Left_CommandSub "$("> spids: [221 229] ) } spids: [219] ) ] spids: [219] ) (C {(test_reset)} {($ VSub_Name "$n")}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:a) op: Equal rhs: {(0) (CommandSubPart command_list: (CommandList children: [(C {(vmstate)} {(--format) (Lit_Other "=") (SQ <"+%(size)u">)})] ) left_token: <Left_CommandSub "$("> spids: [238 246] ) } spids: [236] ) ] spids: [236] ) (C {(test_reset)} {($ VSub_Name "$n")}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:b) op: Equal rhs: {(0) (CommandSubPart command_list: (CommandList children: [(C {(vmstate)} {(--format) (Lit_Other "=") (SQ <"+%(size)u">)})] ) left_token: <Left_CommandSub "$("> spids: [254 262] ) } spids: [252] ) ] spids: [252] ) (If arms: [ (if_arm cond: [ (DParen child: (ArithBinary op_id: Arith_Great left: (ArithVarRef name:b) right: (ArithVarRef name:a) ) ) ] action: [ (C {(err_exit)} { (DQ ("variable value reset memory leak -- ") (ArithSubPart anode: (ArithBinary op_id: Arith_Minus left: (ArithVarRef name:b) right: (ArithVarRef name:a) ) spids: [284 289] ) (" bytes after ") ($ VSub_Name "$n") (" iterations") ) } ) ] spids: [-1 278] ) ] spids: [-1 295] ) (ForEach iter_name: exp iter_words: [{(65535)} {(65536)}] do_arg_iter: False body: (DoGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:got) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (SimpleCommand words: [ {($ VSub_Name "$SHELL")} {(-c)} {(SQ <"x=$(printf \"%.*c\" ">) ($ VSub_Name "$exp") (SQ <" x); print ${#x}">) } ] redirects: [ (Redir op_id: Redir_GreatAnd fd: 2 arg_word: {(1)} spids: [328] ) ] ) ] ) left_token: <Left_CommandSub "$("> spids: [315 330] ) } spids: [314] ) ] spids: [314] ) (AndOr children: [ (DBracket expr: (BoolBinary op_id: BoolBinary_GlobDEqual left: {($ VSub_Name "$got")} right: {($ VSub_Name "$exp")} ) ) (C {(err_exit)} { (DQ ("large command substitution failed -- expected ") ($ VSub_Name "$exp") (", got ") ($ VSub_Name "$got") ) } ) ] op_id: Op_DPipe ) ] spids: [312 354] ) spids: [307 -1] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:data) op: Equal rhs: { (DQ ( "(v=;sid=;di=;hi=;ti='1328244300';lv='o';id='172.3.161.178';var=(k='conn_num._total';u=;fr=;l='Number of Connections';n='22';t='number';))" ) ) } spids: [357] ) ] spids: [357] ) (SimpleCommand words: [{(read)} {(-C)} {(stat)}] redirects: [(Redir op_id:Redir_TLess fd:-1 arg_word:{(DQ ($ VSub_Name "$data"))} spids:[368])] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:a) op: Equal rhs: {(0) (CommandSubPart command_list: (CommandList children: [(C {(vmstate)} {(--format) (Lit_Other "=") (SQ <"+%(size)u">)})] ) left_token: <Left_CommandSub "$("> spids: [376 384] ) } spids: [374] ) ] spids: [374] ) (Pipeline children: [ (ForExpr init: (BinaryAssign op_id: Arith_Equal left: (LhsName name:i) right: (ArithWord w:{(Lit_Digits 0)}) ) cond: (ArithBinary op_id: Arith_Less left: (ArithVarRef name:i) right: (ArithWord w:{(Lit_Digits 500)}) ) update: (UnaryAssign op_id:Node_PostDPlus child:(LhsName name:i)) body: (DoGroup children: [(C {(print)} {(-r)} {(--)} {(DQ ($ VSub_Name "$data"))})] spids: [406 418] ) ) (While cond: [(C {(read)} {(-u) ($ VSub_Name "$n")} {(-C)} {(stat)})] body: (DoGroup children:[(C {(Lit_Other ":")})] spids:[434439]) ) ] negated: False ) (SimpleCommand words: [{(Lit_LBrace "{") (n) (Lit_RBrace "}")}] redirects: [(Redir op_id:Redir_LessAnd fd:-1 arg_word:{(0-)} spids:[444])] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:b) op: Equal rhs: {(0) (CommandSubPart command_list: (CommandList children: [(C {(vmstate)} {(--format) (Lit_Other "=") (SQ <"+%(size)u">)})] ) left_token: <Left_CommandSub "$("> spids: [449 457] ) } spids: [447] ) ] spids: [447] ) (AndOr children: [ (DParen child: (ArithBinary op_id:Arith_Great left:(ArithVarRef name:b) right:(ArithVarRef name:a)) ) (C {(err_exit)} {(SQ <"memory leak with read -C when deleting compound variable">)}) ] op_id: Op_DAmp ) (SimpleCommand words: [{(read)} {(-C)} {(stat)}] redirects: [(Redir op_id:Redir_TLess fd:-1 arg_word:{(DQ ($ VSub_Name "$data"))} spids:[485])] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:a) op: Equal rhs: {(0) (CommandSubPart command_list: (CommandList children: [(C {(vmstate)} {(--format) (Lit_Other "=") (SQ <"+%(size)u">)})] ) left_token: <Left_CommandSub "$("> spids: [493 501] ) } spids: [491] ) ] spids: [491] ) (ForExpr init: (BinaryAssign op_id:Arith_Equal left:(LhsName name:i) right:(ArithWord w:{(Lit_Digits 0)})) cond: (ArithBinary op_id: Arith_Less left: (ArithVarRef name:i) right: (ArithWord w:{(Lit_Digits 500)}) ) update: (UnaryAssign op_id:Node_PostDPlus child:(LhsName name:i)) body: (DoGroup children: [ (SimpleCommand words: [{(read)} {(-C)} {(stat)}] redirects: [ (Redir op_id: Redir_TLess fd: -1 arg_word: {(DQ ($ VSub_Name "$data"))} spids: [531] ) ] ) ] spids: [523 537] ) ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:b) op: Equal rhs: {(0) (CommandSubPart command_list: (CommandList children: [(C {(vmstate)} {(--format) (Lit_Other "=") (SQ <"+%(size)u">)})] ) left_token: <Left_CommandSub "$("> spids: [541 549] ) } spids: [539] ) ] spids: [539] ) (AndOr children: [ (DParen child: (ArithBinary op_id:Arith_Great left:(ArithVarRef name:b) right:(ArithVarRef name:a)) ) (C {(err_exit)} {(SQ <"memory leak with read -C when using <<<">)}) ] op_id: Op_DAmp ) (C {(exit)} { (ArithSubPart anode: (TernaryOp cond: (ArithBinary op_id: Arith_Less left: (ArithVarRef name:Errors) right: (ArithWord w:{(Lit_Digits 125)}) ) true_expr: (ArithVarRef name:Errors) false_expr: (ArithWord w:{(Lit_Digits 125)}) ) spids: [573 582] ) } ) ] )