(command.AndOr ops: [Id.Op_DAmp] children: [ (command.ShFunction name: _cppcheck body: (command.BraceGroup children: [ (C {(local)} {(cur)} {(prev)} {(words)} {(cword)} {(split)}) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {(_init_completion)} {(-s)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:30) ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$prev')} arms: [ (case_arm pat_list: [ {(--append)} {(--exitcode-suppressions)} {(--rule-file)} {(--config-excludes-file)} {(--suppressions-list)} {(--includes-file)} {(--include)} {(-i)} ] action: [ (C {(_filedir)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:64) ) ] spids: [41 58 67 -1] ) (case_arm pat_list: [ {(-D)} {(-U)} {(--rule)} {(--suppress)} {(--template)} {(--max-configs)} {(-h)} {(--help)} {(--version)} {(--errorlist)} {(--config-exclude)} {(-l)} ] action: [ (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:98) ) ] spids: [70 95 101 -1] ) (case_arm pat_list: [{(--enable)}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:split) op: assign_op.Equal rhs: {(false)} spids: [112] ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.DBracket expr: (bool_expr.Binary op_id: Id.BoolBinary_GlobDEqual left: {(DQ ($ Id.VSub_DollarName '$cur'))} right: {(Id.Lit_Other '?') (Id.Lit_Other '*') (Id.Lit_Other ',') (Id.Lit_Other '*') } ) ) terminator: (Token id:Id.Op_Semi val:';' span_id:132) ) ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: { (DQ (braced_var_sub token: (Token id:Id.VSub_Name val:cur span_id:140) suffix_op: (suffix_op.Unary op_id: Id.VOp1_Percent arg_word: {(',*')} ) ) ) } spids: [137] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:cur) op: assign_op.Equal rhs: { (DQ (braced_var_sub token: (Token id:Id.VSub_Name val:cur span_id:150) suffix_op: (suffix_op.Unary op_id: Id.VOp1_DPound arg_word: {('*,')} ) ) ) } spids: [147] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:split) op: assign_op.Equal rhs: {(true)} spids: [157] ) ] ) ] spids: [116 134] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.Equal rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:165) words: [ { (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:167) command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} { (SQ (Token id: Id.Lit_Chars val: 'all warning style performance\n' span_id: 174 ) (Token id: Id.Lit_Chars val: ' portability information unusedFunction missingInclude' span_id: 175 ) ) } {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))} ) ] ) ) } ] ) } spids: [164] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {($ Id.VSub_DollarName '$split')}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.Equal rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:196) words: [ { (braced_var_sub token: (Token id:Id.VSub_Name val:COMPREPLY span_id:199) bracket_op: (bracket_op.WholeArray op_id:Id.Lit_At) suffix_op: (suffix_op.PatSub pat: {} replace: {(DQ ($ Id.VSub_DollarName '$prev') (','))} replace_mode: Id.Lit_Pound ) ) } ] ) } spids: [195] ) ] ) ] ) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:215) ) ] spids: [104 105 218 -1] ) (case_arm pat_list: [{(--error-exitcode)}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.Equal rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:226) words: [ { (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:228) command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} { (SQ (Token id: Id.Lit_Chars val: '{0..255}' span_id: 235 ) ) } {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))} ) ] ) ) } ] ) } spids: [225] ) ] ) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:249) ) ] spids: [221 222 252 -1] ) (case_arm pat_list: [{(--file-list)}] action: [ (C {(_filedir)}) (command.AndOr ops: [Id.Op_DAmp] children: [ (command.DBracket expr: (bool_expr.LogicalOr left: (bool_expr.Unary op_id: Id.BoolUnary_z child: {($ Id.VSub_DollarName '$cur')} ) right: (bool_expr.Binary op_id: Id.BoolBinary_GlobDEqual left: {($ Id.VSub_DollarName '$cur')} right: {(-)} ) ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.PlusEqual rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:281) words: [{(-)}] ) } spids: [280] ) ] ) ] ) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:288) ) ] spids: [255 256 291 -1] ) (case_arm pat_list: [{(-I)}] action: [ (C {(_filedir)} {(-d)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:303) ) ] spids: [294 295 306 -1] ) (case_arm pat_list: [{(-j)}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.Equal rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:314) words: [ { (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:316) command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} { (DQ ('{2..') (command_sub left_token: (Token id: Id.Left_DollarParen val: '$(' span_id: 324 ) command_list: (command.CommandList children: [(C {(_ncpus)})] ) ) ('}') ) } {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))} ) ] ) ) } ] ) } spids: [313] ) ] ) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:341) ) ] spids: [309 310 344 -1] ) (case_arm pat_list: [{(--language)} {(-x)}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.Equal rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:354) words: [ { (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:356) command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} {(SQ (Token id:Id.Lit_Chars val:'c c++' span_id:363))} {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))} ) ] ) ) } ] ) } spids: [353] ) ] ) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:377) ) ] spids: [347 350 380 -1] ) (case_arm pat_list: [{(--std)}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.Equal rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:388) words: [ { (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:390) command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} { (SQ (Token id: Id.Lit_Chars val: 'c89 c99 c11 c++03 c++11 posix' span_id: 397 ) ) } {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))} ) ] ) ) } ] ) } spids: [387] ) ] ) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:413) ) ] spids: [383 384 416 -1] ) (case_arm pat_list: [{(--platform)}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.Equal rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:424) words: [ { (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:426) command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} { (SQ (Token id: Id.Lit_Chars val: 'unix32 unix64 win32A win32W win64\n' span_id: 433 ) (Token id:Id.Lit_Chars val:' native' span_id:434) ) } {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))} ) ] ) ) } ] ) } spids: [423] ) ] ) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:448) ) ] spids: [419 420 451 -1] ) (case_arm pat_list: [{(-rp)} {(--relative-paths)}] action: [ (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {($ Id.VSub_DollarName '$split')}) terminator: (Token id:Id.Op_Semi val:';' span_id:463) ) ] action: [ (C {(_filedir)} {(-d)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:476) ) ] spids: [460 465] ) ] ) ] spids: [454 457 482 -1] ) (case_arm pat_list: [{(--library)}] action: [ (C {(_filedir)} {(cfg)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:494) ) ] spids: [485 486 497 -1] ) (case_arm pat_list: [{(--xml-version)}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.Equal rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:505) words: [ { (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:507) command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} {(SQ (Token id:Id.Lit_Chars val:'1 2' span_id:514))} {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))} ) ] ) ) } ] ) } spids: [504] ) ] ) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:528) ) ] spids: [500 501 531 -1] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {($ Id.VSub_DollarName '$split')}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:542) ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.DBracket expr: (bool_expr.Binary op_id: Id.BoolBinary_GlobDEqual left: {($ Id.VSub_DollarName '$cur')} right: {(-) (Id.Lit_Other '*')} ) ) terminator: (Token id:Id.Op_Semi val:';' span_id:558) ) ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.Equal rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:564) words: [ { (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:566) command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} { (SQ (Token id: Id.Lit_Chars val: '$( _parse_help "$1" )' span_id: 573 ) ) } {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))} ) ] ) ) } ] ) } spids: [563] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (command.DBracket expr: (bool_expr.Binary op_id: Id.BoolBinary_GlobDEqual left: {($ Id.VSub_DollarName '$COMPREPLY')} right: {(Id.Lit_Other '*') (Id.BoolBinary_GlobEqual '=')} ) ) (C {(compopt)} {(-o)} {(nospace)}) ] ) ] spids: [546 560] ) ] else_action: [ (C {(_filedir)} {(SQ (Token id:Id.Lit_Chars val:'@([cht]pp|[cht]xx|cc|[ch]++|[ch])' span_id:613))} ) ] ) ] ) ) (C {(complete)} {(-F)} {(_cppcheck)} {(cppcheck)}) ] )