(CommandList children: [ (C {(typeset)} {(-i)} {(Lit_VarLike "_Dbg_action_count=") (0)}) (Sentence child:(C {(typeset)} {(-a)} {(_Dbg_action_enable)}) terminator:<Op_Semi ";">) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:_Dbg_action_enable) op: Equal rhs: {(ArrayLiteralPart)} spids: [80] ) ] spids: [80] ) (Sentence child:(C {(typeset)} {(-a)} {(_Dbg_action_file)}) terminator:<Op_Semi ";">) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:_Dbg_action_file) op: Equal rhs: {(ArrayLiteralPart)} spids: [95] ) ] spids: [95] ) (Sentence child:(C {(typeset)} {(-a)} {(_Dbg_action_line)}) terminator:<Op_Semi ";">) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:_Dbg_action_line) op: Equal rhs: {(ArrayLiteralPart)} spids: [110] ) ] spids: [110] ) (Sentence child:(C {(typeset)} {(-a)} {(_Dbg_action_stmt)}) terminator:<Op_Semi ";">) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:_Dbg_action_stmt) op: Equal rhs: {(ArrayLiteralPart)} spids: [125] ) ] spids: [125] ) (C {(typeset)} {(-i)} {(Lit_VarLike "_Dbg_action_max=") (0)}) (Sentence child:(C {(typeset)} {(-A)} {(_Dbg_action_file2action)}) terminator:<Op_Semi ";">) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:_Dbg_action_file2action) op: Equal rhs: {(ArrayLiteralPart)} spids: [154] ) ] spids: [154] ) (Sentence child:(C {(typeset)} {(-A)} {(_Dbg_action_file2linenos)}) terminator:<Op_Semi ";">) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:_Dbg_action_file2linenos) op: Equal rhs: {(ArrayLiteralPart)} spids: [169] ) ] spids: [169] ) (FuncDef name: _Dbg_save_actions body: (BraceGroup children: [ (SimpleCommand words: [{(typeset)} {(-p)} {(_Dbg_action_line)}] redirects: [ (Redir op_id: Redir_DGreat fd: -1 arg_word: {($ VSub_Name "$_Dbg_statefile")} spids: [201] ) ] ) (SimpleCommand words: [{(typeset)} {(-p)} {(_Dbg_action_file)}] redirects: [ (Redir op_id: Redir_DGreat fd: -1 arg_word: {($ VSub_Name "$_Dbg_statefile")} spids: [212] ) ] ) (SimpleCommand words: [{(typeset)} {(-p)} {(_Dbg_action_enable)}] redirects: [ (Redir op_id: Redir_DGreat fd: -1 arg_word: {($ VSub_Name "$_Dbg_statefile")} spids: [223] ) ] ) (SimpleCommand words: [{(typeset)} {(-p)} {(_Dbg_action_stmt)}] redirects: [ (Redir op_id: Redir_DGreat fd: -1 arg_word: {($ VSub_Name "$_Dbg_statefile")} spids: [234] ) ] ) (SimpleCommand words: [{(typeset)} {(-p)} {(_Dbg_action_max)}] redirects: [ (Redir op_id: Redir_DGreat fd: -1 arg_word: {($ VSub_Name "$_Dbg_statefile")} spids: [245] ) ] ) (SimpleCommand words: [{(typeset)} {(-p)} {(_Dbg_action_file2linenos)}] redirects: [ (Redir op_id: Redir_DGreat fd: -1 arg_word: {($ VSub_Name "$_Dbg_statefile")} spids: [256] ) ] ) (SimpleCommand words: [{(typeset)} {(-p)} {(_Dbg_action_file2action)}] redirects: [ (Redir op_id: Redir_DGreat fd: -1 arg_word: {($ VSub_Name "$_Dbg_statefile")} spids: [267] ) ] ) ] spids: [192] ) spids: [188 191] ) (FuncDef name: _Dbg_list_action body: (BraceGroup children: [ (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other "[")} { (BracedVarSub token: <VSub_Name _Dbg_action_line> prefix_op: VSub_Pound bracket_op: (WholeArray op_id:Lit_At) spids: [289 295] ) } {(KW_Bang "!") (Lit_Other "=")} {(0)} {(Lit_Other "]")} ) terminator: <Op_Semi ";"> ) ] action: [ (C {(_Dbg_msg)} {(DQ ("Actions at following places:"))}) (C {(typeset)} {(-i)} {(i)}) (C {(_Dbg_section)} {(DQ ("Num Enb Stmt file:line"))}) (ForExpr init: (BinaryAssign op_id: Arith_Equal left: (LhsName name:i) right: (ArithWord w:{(Lit_Digits 1)}) ) cond: (ArithBinary op_id: Arith_LessEqual left: (ArithVarRef name:i) right: (ArithVarRef name:_Dbg_action_max) ) update: (UnaryAssign op_id:Node_PostDPlus child:(LhsName name:i)) body: (DoGroup children: [ (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolUnary op_id: BoolUnary_n child: { (BracedVarSub token: <VSub_Name _Dbg_action_line> bracket_op: (ArrayIndex expr: (ArithWord w:{($ VSub_Name "$i")}) ) spids: [370 375] ) } ) ) terminator: <Op_Semi ";"> ) ] action: [ (C {(typeset)} {(Lit_VarLike "source_file=") (BracedVarSub token: <VSub_Name _Dbg_action_file> bracket_op: (ArrayIndex expr: (ArithWord w:{($ VSub_Name "$i")}) ) spids: [387 392] ) } ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:source_file) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(_Dbg_adjust_filename)} {(DQ ($ VSub_Name "$source_file"))} ) ] ) left_token: <Left_CommandSub "$("> spids: [396 402] ) } spids: [395] ) ] spids: [395] ) (C {(_Dbg_printf)} {(DQ ("%-3d %3d %-18s %s:%s"))} {($ VSub_Name "$i")} { (BracedVarSub token: <VSub_Name _Dbg_action_enable> bracket_op: (ArrayIndex expr: (ArithWord w:{($ VSub_Name "$i")}) ) spids: [413 418] ) } { (DQ (BracedVarSub token: <VSub_Name _Dbg_action_stmt> bracket_op: (ArrayIndex expr: (ArithWord w:{($ VSub_Name "$i")}) ) spids: [423 428] ) ) } {($ VSub_Name "$source_file")} { (BracedVarSub token: <VSub_Name _Dbg_action_line> bracket_op: (ArrayIndex expr: (ArithWord w:{($ VSub_Name "$i")}) ) spids: [435 440] ) } ) ] spids: [-1 381] ) ] spids: [-1 443] ) ] spids: [361 446] ) ) ] spids: [-1 305] ) ] else_action: [(C {(_Dbg_msg)} {(DQ ("No actions have been set."))})] spids: [449 459] ) ] spids: [281] ) spids: [277 280] ) (FuncDef name: _Dbg_set_action body: (BraceGroup children: [ (AndOr children: [ (DParen child: (ArithBinary op_id: Arith_NEqual left: (ArithWord w:{($ VSub_Pound "$#")}) right: (ArithWord w:{(Lit_Digits 3)}) ) ) (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)}) ] op_id: Op_DAmp ) (C {(typeset)} {(source_file)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:source_file) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [(C {(_Dbg_expand_filename)} {(DQ ($ VSub_Number "$1"))})] ) left_token: <Left_CommandSub "$("> spids: [499 505] ) } spids: [498] ) ] spids: [498] ) (AndOr children: [ (C { (CommandSubPart command_list: (CommandList children: [(C {(_Dbg_is_int)} {($ VSub_Number "$2")})] ) left_token: <Left_CommandSub "$("> spids: [509 513] ) } ) (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)}) ] op_id: Op_DPipe ) (C {(typeset)} {(-ri)} {(Lit_VarLike "lineno=") ($ VSub_Number "$2")}) (C {(typeset)} {(-r)} {(Lit_VarLike "stmt=") ($ VSub_Number "$3")}) (DParen child: (UnaryAssign op_id:Node_PostDPlus child:(LhsName name:_Dbg_action_max)) ) (DParen child: (UnaryAssign op_id:Node_PostDPlus child:(LhsName name:_Dbg_action_count)) ) (C {(_Dbg_action_line) (Lit_Other "[") ($ VSub_Name "$_Dbg_action_max") (Lit_Other "]") (Lit_Other "=") ($ VSub_Name "$lineno") } ) (C {(_Dbg_action_file) (Lit_Other "[") ($ VSub_Name "$_Dbg_action_max") (Lit_Other "]") (Lit_Other "=") (DQ ($ VSub_Name "$source_file")) } ) (C {(_Dbg_action_stmt) (Lit_Other "[") ($ VSub_Name "$_Dbg_action_max") (Lit_Other "]") (Lit_Other "=") (DQ ($ VSub_Name "$stmt")) } ) (C {(_Dbg_action_enable) (Lit_Other "[") ($ VSub_Name "$_Dbg_action_max") (Lit_Other "]") (Lit_Other "=") (1) } ) (C {(typeset)} {(dq_source_file)}) (C {(typeset)} {(Lit_VarLike "dq_source_file=") (CommandSubPart command_list: (CommandList children: [(C {(_Dbg_esc_dq)} {(DQ ($ VSub_Name "$source_file"))})] ) left_token: <Left_CommandSub "$("> spids: [603 609] ) } ) (C {(typeset)} {(Lit_VarLike "dq_stmt=") (CommandSubPart command_list: (CommandList children: [(C {(_Dbg_esc_dq)} {(DQ ($ VSub_Name "$stmt"))})] ) left_token: <Left_CommandSub "$("> spids: [615 621] ) } ) (C {(_Dbg_write_journal)} { (DQ ("_Dbg_action_line[") ($ VSub_Name "$_Dbg_action_max") ("]=") ($ VSub_Name "$lineno") ) } ) (C {(_Dbg_write_journal)} { (DQ ("_Dbg_action_file[") ($ VSub_Name "$_Dbg_action_max") ("]=") (EscapedLiteralPart token:<Lit_EscapedChar "\\\"">) ($ VSub_Name "$dq_source_file") (EscapedLiteralPart token:<Lit_EscapedChar "\\\"">) ) } ) (C {(_Dbg_write_journal)} { (DQ ("_Dbg_action_stmt[") ($ VSub_Name "$_Dbg_action_max") ("]=") (EscapedLiteralPart token:<Lit_EscapedChar "\\\"">) ($ VSub_Name "$dq_stmt") (EscapedLiteralPart token:<Lit_EscapedChar "\\\"">) ) } ) (C {(_Dbg_write_journal)} {(DQ ("_Dbg_action_enable[") ($ VSub_Name "$_Dbg_action_max") ("]=1"))} ) (C {(_Dbg_action_file2linenos) (Lit_Other "[") ($ VSub_Name "$source_file") (Lit_Other "]") (Lit_Other "+") (Lit_Other "=") (DQ (" ") ($ VSub_Name "$lineno") (" ")) } ) (C {(_Dbg_action_file2action) (Lit_Other "[") ($ VSub_Name "$source_file") (Lit_Other "]") (Lit_Other "+") (Lit_Other "=") (DQ (" ") ($ VSub_Name "$_Dbg_action_max") (" ")) } ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:source_file) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [(C {(_Dbg_adjust_filename)} {(DQ ($ VSub_Name "$source_file"))})] ) left_token: <Left_CommandSub "$("> spids: [705 711] ) } spids: [704] ) ] spids: [704] ) (C {(_Dbg_msg)} { (DQ ("Action ") ($ VSub_Name "$_Dbg_action_max") (" set in file ") (${ VSub_Name source_file) (", line ") ($ VSub_Name "$lineno") (.) ) } ) (C {(_Dbg_write_journal)} {(DQ ("_Dbg_action_max=") ($ VSub_Name "$_Dbg_action_max"))}) (ControlFlow token:<ControlFlow_Return return> arg_word:{(0)}) ] spids: [472] ) spids: [468 471] ) (FuncDef name: _Dbg_unset_action body: (BraceGroup children: [ (AndOr children: [ (DParen child: (ArithBinary op_id: Arith_DEqual left: (ArithWord w:{($ VSub_Pound "$#")}) right: (ArithWord w:{(Lit_Digits 2)}) ) ) (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)}) ] op_id: Op_DPipe ) (C {(typeset)} {(-r)} {(Lit_VarLike "filename=") (DQ ($ VSub_Number "$1"))}) (AndOr children: [ (C { (CommandSubPart command_list: (CommandList children: [(C {(_Dbg_is_int)} {(DQ ($ VSub_Number "$2"))})] ) left_token: <Left_CommandSub "$("> spids: [788 794] ) } ) (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)}) ] op_id: Op_DPipe ) (C {(typeset)} {(-i)} {(Lit_VarLike "lineno=") ($ VSub_Number "$2")}) (C {(typeset)} {(fullname)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:fullname) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [(C {(_Dbg_expand_filename)} {(DQ ($ VSub_Name "$filename"))})] ) left_token: <Left_CommandSub "$("> spids: [817 823] ) } spids: [816] ) ] spids: [816] ) (C {(typeset)} {(-a)} {(linenos)}) (C {(eval)} { (DQ ("linenos=(") (BracedVarSub token: <VSub_Name _Dbg_action_file2linenos> bracket_op: (ArrayIndex expr:(ArithWord w:{($ VSub_Name "$fullname")})) spids: [842 847] ) (")") ) } ) (C {(typeset)} {(-a)} {(action_nos)}) (C {(eval)} { (DQ ("action_nos=(") (BracedVarSub token: <VSub_Name _Dbg_action_file2action> bracket_op: (ArrayIndex expr:(ArithWord w:{($ VSub_Name "$fullname")})) spids: [863 868] ) (")") ) } ) (C {(typeset)} {(-i)} {(i)}) (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: { (BracedVarSub token: <VSub_Name linenos> prefix_op: VSub_Pound bracket_op: (WholeArray op_id:Lit_At) spids: [893 899] ) } ) ) update: (UnaryAssign op_id:Node_PostDPlus child:(LhsName name:i)) body: (DoGroup children: [ (If arms: [ (if_arm cond: [ (Sentence child: (DParen child: (ArithBinary op_id: Arith_DEqual left: (ArithBinary op_id: Arith_LBracket left: (ArithVarRef name:linenos) right: (ArithVarRef name:i) ) right: (ArithVarRef name:lineno) ) ) terminator: <Op_Semi ";"> ) ] action: [ (C {(typeset)} {(-i)} {(action_num)}) (DParen child: (BinaryAssign op_id: Arith_Equal left: (LhsName name:action_num) right: (ArithBinary op_id: Arith_LBracket left: (ArithVarRef name:action_nos) right: (ArithVarRef name:i) ) ) ) (C {(_Dbg_unset_action_arrays)} {($ VSub_Name "$action_num")}) (C {(unset)} {(linenos) (Lit_Other "[") (i) (Lit_Other "]")}) (C {(_Dbg_action_file2linenos) (Lit_Other "[") ($ VSub_Name "$fullname") (Lit_Other "]") (Lit_Other "=") (BracedVarSub token: <VSub_Name linenos> bracket_op: (WholeArray op_id:Lit_At) spids: [976 981] ) } ) (ControlFlow token: <ControlFlow_Return return> arg_word: {(0)} ) ] spids: [-1 929] ) ] spids: [-1 989] ) ] spids: [908 992] ) ) (C {(_Dbg_errmsg)} { (DQ ("No action found in file ") (${ VSub_Name filename) (", line ") ($ VSub_Name "$lineno") (.) ) } ) (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)}) ] spids: [757] ) spids: [753 756] ) (FuncDef name: _Dbg_unset_action_arrays body: (BraceGroup children: [ (AndOr children: [ (DParen child: (ArithBinary op_id: Arith_NEqual left: (ArithWord w:{($ VSub_Pound "$#")}) right: (ArithWord w:{(Lit_Digits 1)}) ) ) (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)}) ] op_id: Op_DAmp ) (C {(typeset)} {(-i)} {(Lit_VarLike "del=") ($ VSub_Number "$1")}) (C {(_Dbg_write_journal_eval)} {(DQ ("unset _Dbg_action_enable[") ($ VSub_Name "$del") ("]"))} ) (C {(_Dbg_write_journal_eval)} {(DQ ("unset _Dbg_action_file[") ($ VSub_Name "$del") ("]"))}) (C {(_Dbg_write_journal_eval)} {(DQ ("unset _Dbg_action_line[") ($ VSub_Name "$del") ("]"))}) (C {(_Dbg_write_journal_eval)} {(DQ ("unset _Dbg_action_stmt[") ($ VSub_Name "$del") ("]"))}) (DParen child: (UnaryAssign op_id:Node_PostDMinus child:(LhsName name:_Dbg_action_count)) ) (ControlFlow token:<ControlFlow_Return return> arg_word:{(0)}) ] spids: [1025] ) spids: [1021 1024] ) ] )