(command.CommandList children: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:srcversion spids:[3]) op: Equal rhs: {(SQ <'$MirOS: src/bin/mksh/Build.sh,v 1.697 2016/03/04 18:28:39 tg Exp $'>)} spids: [3] ) ] spids: [3] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:LC_ALL spids:[81]) op: Equal rhs: {(C)} spids: [81] ) ] spids: [81] ) (C {(export)} {(LC_ALL)}) (command.Case to_match: {($ VSub_DollarName '$ZSH_VERSION') (Lit_Other ':') ($ VSub_DollarName '$VERSION')} arms: [ (case_arm pat_list: [{(Lit_Other ':') (zsh) (Lit_Other '*')}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:ZSH_VERSION spids:[102]) op: Equal rhs: {(2)} spids: [102] ) ] spids: [102] ) ] spids: [97 100 105 16777215] ) ] spids: [89 95 107] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.AndOr ops: [Op_DAmp] children: [ (C {(test)} {(-n)} { (DQ (word_part.BracedVarSub token: <VSub_Name ZSH_VERSION> suffix_op: (suffix_op.StringUnary op_id:VTest_Plus arg_word:{(x)}) spids: [117 121] ) ) } ) (command.Subshell child: (C {(emulate)} {(sh)}) redirects: [ (redir.Redir op: <Redir_Great '>'> fd: 16777215 arg_word: {(/dev/null)} ) (redir.Redir op: <Redir_GreatAnd '2>&'> fd: 2 arg_word: {(1)} ) ] spids: [126 130] ) ] ) terminator: <Op_Semi ';'> ) ] action: [ (C {(emulate)} {(sh)}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:NULLCMD spids:[147]) op: Equal rhs: {(Lit_Other ':')} spids: [147] ) ] spids: [147] ) ] spids: [16777215 139] ) ] spids: [16777215 150] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.SimpleCommand words: [{(test)} {(-d)} {(/usr/xpg4/bin/.)}] redirects: [ (redir.Redir op: <Redir_Great '>'> fd: 16777215 arg_word: {(/dev/null)} ) (redir.Redir op:<Redir_GreatAnd '2>&'> fd:2 arg_word:{(1)}) ] ) terminator: <Op_Semi ';'> ) ] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:PATH spids:[175]) op: Equal rhs: {(/usr/xpg4/bin) (Lit_Other ':') ($ VSub_DollarName '$PATH')} spids: [175] ) ] spids: [175] ) (C {(export)} {(PATH)}) ] spids: [16777215 168] ) ] spids: [16777215 185] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:nl spids:[188]) op: Equal rhs: {(SQ <'\n'>)} spids: [188] ) ] spids: [188] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:safeIFS spids:[193]) op: Equal rhs: {(SQ <'\t'>)} spids: [193] ) ] spids: [193] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:safeIFS spids:[198]) op: Equal rhs: {(DQ (' ') ($ VSub_DollarName '$safeIFS') ($ VSub_DollarName '$nl'))} spids: [198] ) ] spids: [198] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:IFS spids:[205]) op: Equal rhs: {($ VSub_DollarName '$safeIFS')} spids: [205] ) ] spids: [205] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:allu spids:[208]) op: Equal rhs: {(QWERTYUIOPASDFGHJKLZXCVBNM)} spids: [208] ) ] spids: [208] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:alll spids:[211]) op: Equal rhs: {(qwertyuiopasdfghjklzxcvbnm)} spids: [211] ) ] spids: [211] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:alln spids:[214]) op: Equal rhs: {(0123456789)} spids: [214] ) ] spids: [214] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:alls spids:[217]) op: Equal rhs: {(______________________________________________________________)} spids: [217] ) ] spids: [217] ) (command.FuncDef name: genopt_die body: (command.BraceGroup children: [ (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {(-n)} {(DQ ($ VSub_Number '$1'))}) terminator: <Op_Semi ';'> ) ] action: [ (command.SimpleCommand words: [{(echo)} {(DQ ('E: ') ($ VSub_Star '$*'))}] redirects: [(redir.Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})] ) (command.SimpleCommand words: [ {(echo)} { (DQ ("E: in '") ($ VSub_DollarName '$srcfile') ("': '") ($ VSub_DollarName '$line') ("'") ) } ] redirects: [(redir.Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})] ) ] spids: [16777215 239] ) ] else_action: [ (command.SimpleCommand words: [ {(echo)} { (DQ ("E: invalid input in '") ($ VSub_DollarName '$srcfile') ("': '") ($ VSub_DollarName '$line') ("'") ) } ] redirects: [(redir.Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})] ) ] spids: [267 284] ) (C {(rm)} {(-f)} {(DQ ($ VSub_DollarName '$bn') (.gen))}) (command.ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] spids: [225] ) spids: [221 224] ) (command.FuncDef name: genopt_soptc body: (command.BraceGroup children: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:optc spids:[311]) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [ (command.Pipeline children: [ (C {(echo)} {(DQ ($ VSub_DollarName '$line'))}) (C {(sed)} {(SQ <'s/^[<>]\\(.\\).*$/\\1/'>)}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [312 326] ) } spids: [311] ) ] spids: [311] ) (command.AndOr ops: [Op_DAmp] children: [ (C {(test)} {(x) (DQ ($ VSub_DollarName '$optc'))} {(Lit_Other '=')} {(x) (SQ <'|'>)}) (command.ControlFlow token:<ControlFlow_Return return>) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:optclo spids:[348]) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [ (command.Pipeline children: [ (C {(echo)} {(DQ ($ VSub_DollarName '$optc'))}) (C {(tr)} {($ VSub_DollarName '$allu')} {($ VSub_DollarName '$alll')}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [349 363] ) } spids: [348] ) ] spids: [348] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {(x) (DQ ($ VSub_DollarName '$optc'))} {(Lit_Other '=')} {(x) (DQ ($ VSub_DollarName '$optclo'))} ) terminator: <Op_Semi ';'> ) ] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:islo spids:[386]) op: Equal rhs: {(1)} spids: [386] ) ] spids: [386] ) ] spids: [16777215 383] ) ] else_action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:islo spids:[393]) op: Equal rhs: {(0)} spids: [393] ) ] spids: [393] ) ] spids: [390 397] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:sym spids:[400]) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [ (command.Pipeline children: [ (C {(echo)} {(DQ ($ VSub_DollarName '$line'))}) (C {(sed)} {(SQ <'s/^[<>]/|/'>)}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [401 415] ) } spids: [400] ) ] spids: [400] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:o_str spids:[418]) op: Equal rhs: {($ VSub_DollarName '$o_str') ($ VSub_DollarName '$nl') (DQ ('<') ($ VSub_DollarName '$optclo') ($ VSub_DollarName '$islo') ($ VSub_DollarName '$sym') ) } spids: [418] ) ] spids: [418] ) ] spids: [308] ) spids: [304 307] ) (command.FuncDef name: genopt_scond body: (command.BraceGroup children: [ (command.Case to_match: {(x) ($ VSub_DollarName '$cond')} arms: [ (case_arm pat_list: [{(x)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:cond spids:[450]) op: Equal rhs: (word.EmptyWord) spids: [450] ) ] spids: [450] ) ] spids: [446 447 453 16777215] ) (case_arm pat_list: [{(x) (Lit_Other '*') (SQ <' '>) (Lit_Other '*')}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:cond spids:[465]) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [ (command.Pipeline children: [ (C {(echo)} {(DQ ($ VSub_DollarName '$cond'))}) (C {(sed)} {(SQ <'s/^ //'>)}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [466 480] ) } spids: [465] ) ] spids: [465] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:cond spids:[483]) op: Equal rhs: {(DQ ('#if ') ($ VSub_DollarName '$cond'))} spids: [483] ) ] spids: [483] ) ] spids: [456 462 490 16777215] ) (case_arm pat_list: [{(x) (SQ <'!'>) (Lit_Other '*')}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:cond spids:[501]) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [ (command.Pipeline children: [ (C {(echo)} {(DQ ($ VSub_DollarName '$cond'))}) (C {(sed)} {(SQ <'s/^!//'>)}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [502 516] ) } spids: [501] ) ] spids: [501] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:cond spids:[519]) op: Equal rhs: {(DQ ('#ifndef ') ($ VSub_DollarName '$cond'))} spids: [519] ) ] spids: [519] ) ] spids: [493 498 526 16777215] ) (case_arm pat_list: [{(x) (Lit_Other '*')}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:cond spids:[534]) op: Equal rhs: {(DQ ('#ifdef ') ($ VSub_DollarName '$cond'))} spids: [534] ) ] spids: [534] ) ] spids: [529 531 541 16777215] ) ] spids: [438 443 544] ) ] spids: [435] ) spids: [431 434] ) (command.FuncDef name: do_genopt body: (command.BraceGroup children: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:srcfile spids:[556]) op: Equal rhs: {($ VSub_Number '$1')} spids: [556] ) ] spids: [556] ) (command.AndOr ops: [Op_DPipe] children: [ (C {(test)} {(-f)} {(DQ ($ VSub_DollarName '$srcfile'))}) (C {(genopt_die)} {(Source)} {(file)} {(word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (srcfile)} {(not)} {(set.)} ) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:bn spids:[584]) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [ (command.Pipeline children: [ (C {(basename)} {(DQ ($ VSub_DollarName '$srcfile'))}) (C {(sed)} {(SQ <'s/.opt$//'>)}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [585 599] ) } spids: [584] ) ] spids: [584] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:o_hdr spids:[602]) op: Equal rhs: {(SQ <'/* +++ GENERATED FILE +++ DO NOT EDIT +++ */'>)} spids: [602] ) ] spids: [602] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:o_gen spids:[608]) op: Equal rhs: (word.EmptyWord) spids: [608] ) ] spids: [608] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:o_str spids:[611]) op: Equal rhs: (word.EmptyWord) spids: [611] ) ] spids: [611] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:o_sym spids:[614]) op: Equal rhs: (word.EmptyWord) spids: [614] ) ] spids: [614] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:ddefs spids:[617]) op: Equal rhs: (word.EmptyWord) spids: [617] ) ] spids: [617] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:state spids:[620]) op: Equal rhs: {(0)} spids: [620] ) ] spids: [620] ) (command.SimpleCommand words: [{(exec)}] redirects: [ (redir.Redir op: <Redir_Less '<'> fd: 16777215 arg_word: {(DQ ($ VSub_DollarName '$srcfile'))} ) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:IFS spids:[632]) op: Equal rhs: (word.EmptyWord) spids: [632] ) ] spids: [632] ) (command.WhileUntil keyword: <KW_While while> cond: [ (command.Sentence child: (command.SimpleCommand words: [{(read)} {(line)}] more_env: [(env_pair name:IFS val:(word.EmptyWord) spids:[637])] ) terminator: <Op_Semi ';'> ) ] body: (command.DoGroup children: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:IFS spids:[647]) op: Equal rhs: {($ VSub_DollarName '$safeIFS')} spids: [647] ) ] spids: [647] ) (command.Case to_match: {($ VSub_DollarName '$state') (Lit_Other ':') ($ VSub_DollarName '$line')} arms: [ (case_arm pat_list: [{(2) (Lit_Other ':') (SQ <'|'>) (Lit_Other '*')}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:o_sym spids:[673]) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [ (command.Pipeline children: [ (C {(echo)} {(DQ ($ VSub_DollarName '$line'))}) (C {(sed)} {(SQ <'s/^.//'>)}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [674 688] ) } spids: [673] ) ] spids: [673] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:o_gen spids:[691]) op: Equal rhs: {($ VSub_DollarName '$o_gen') ($ VSub_DollarName '$nl') (DQ ('#undef F0')) } spids: [691] ) ] spids: [691] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:o_gen spids:[699]) op: Equal rhs: {($ VSub_DollarName '$o_gen') ($ VSub_DollarName '$nl') (DQ ('#undef FN')) } spids: [699] ) ] spids: [699] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:o_gen spids:[707]) op: Equal rhs: {($ VSub_DollarName '$o_gen') ($ VSub_DollarName '$ddefs')} spids: [707] ) ] spids: [707] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:state spids:[712]) op: Equal rhs: {(3)} spids: [712] ) ] spids: [712] ) ] spids: [660 666 716 16777215] ) (case_arm pat_list: [{(1) (Lit_Other ':') (Lit_Other '@') (Lit_Other '@')}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:o_gen spids:[730]) op: Equal rhs: {($ VSub_DollarName '$o_gen') ($ VSub_DollarName '$nl') (DQ ('#endif')) } spids: [730] ) ] spids: [730] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:o_gen spids:[738]) op: Equal rhs: {($ VSub_DollarName '$o_gen') ($ VSub_DollarName '$nl') (DQ ('#ifndef F0')) } spids: [738] ) ] spids: [738] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:o_gen spids:[746]) op: Equal rhs: {($ VSub_DollarName '$o_gen') ($ VSub_DollarName '$nl') (DQ ('#define F0 FN')) } spids: [746] ) ] spids: [746] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:o_gen spids:[754]) op: Equal rhs: {($ VSub_DollarName '$o_gen') ($ VSub_DollarName '$nl') (DQ ('#endif')) } spids: [754] ) ] spids: [754] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:state spids:[762]) op: Equal rhs: {(2)} spids: [762] ) ] spids: [762] ) ] spids: [719 723 766 16777215] ) (case_arm pat_list: [ {(Lit_Other '*') (Lit_Other ':') (Lit_Other '@') (Lit_Other '@') (Lit_Other '*') } ] action: [(C {(genopt_die)})] spids: [769 774 779 16777215] ) (case_arm pat_list: [ {(0) (Lit_Other ':') (/) (word_part.EscapedLiteralPart token: <Lit_EscapedChar '\\*'> ) (-) } {(0) (Lit_Other ':') (word_part.EscapedLiteralPart token: <Lit_EscapedChar '\\ '> ) (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\*'>) (Lit_Other '*') } {(0) (Lit_Other ':')} ] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:o_hdr spids:[799]) op: Equal rhs: {($ VSub_DollarName '$o_hdr') ($ VSub_DollarName '$nl') ($ VSub_DollarName '$line') } spids: [799] ) ] spids: [799] ) ] spids: [782 796 805 16777215] ) (case_arm pat_list: [ {(0) (Lit_Other ':') (Lit_Other '@') (Lit_Other '*')} {(1) (Lit_Other ':') (Lit_Other '@') (Lit_Other '*')} ] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:sym spids:[824]) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [ (command.Pipeline children: [ (C {(echo)} {(DQ ($ VSub_DollarName '$line'))}) (C {(sed)} {(SQ <'s/^@//'>)}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [825 839] ) } spids: [824] ) ] spids: [824] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {($ VSub_DollarName '$state')} {(Lit_Other '=')} {(0)} ) terminator: <Op_Semi ';'> ) ] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:o_gen spids:[856]) op: Equal rhs: {($ VSub_DollarName '$o_gen') ($ VSub_DollarName '$nl') (DQ ('#if defined(') ($ VSub_DollarName '$sym') (')')) } spids: [856] ) ] spids: [856] ) ] spids: [16777215 853] ) ] else_action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:o_gen spids:[869]) op: Equal rhs: {($ VSub_DollarName '$o_gen') ($ VSub_DollarName '$nl') (DQ ('#elif defined(') ($ VSub_DollarName '$sym') (')')) } spids: [869] ) ] spids: [869] ) ] spids: [866 879] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:ddefs spids:[882]) op: Equal rhs: { (DQ ($ VSub_DollarName '$ddefs') ($ VSub_DollarName '$nl') ('#undef ') ($ VSub_DollarName '$sym') ) } spids: [882] ) ] spids: [882] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:state spids:[891]) op: Equal rhs: {(1)} spids: [891] ) ] spids: [891] ) ] spids: [808 817 895 16777215] ) (case_arm pat_list: [ {(0) (Lit_Other ':') (Lit_Other '*')} {(3) (Lit_Other ':') (Lit_Other '*')} ] action: [(C {(genopt_die)})] spids: [898 905 910 16777215] ) (case_arm pat_list: [{(1) (Lit_Other ':') (Lit_Other '*')}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:o_gen spids:[923]) op: Equal rhs: {($ VSub_DollarName '$o_gen') ($ VSub_DollarName '$nl') ($ VSub_DollarName '$line') } spids: [923] ) ] spids: [923] ) ] spids: [913 916 929 16777215] ) (case_arm pat_list: [ {(2) (Lit_Other ':') (SQ <'<'>) (Lit_Other '*') (SQ <'|'>) (Lit_Other '*')} ] action: [(C {(genopt_soptc)})] spids: [932 942 948 16777215] ) (case_arm pat_list: [ {(2) (Lit_Other ':') (SQ <'>'>) (Lit_Other '*') (SQ <'|'>) (Lit_Other '*')} ] action: [ (C {(genopt_soptc)}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:cond spids:[967]) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [ (command.Pipeline children: [ (C {(echo)} {(DQ ($ VSub_DollarName '$line'))}) (C {(sed)} {(SQ <'s/^[^|]*|//'>)}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [968 982] ) } spids: [967] ) ] spids: [967] ) (C {(genopt_scond)}) (command.Case to_match: {($ VSub_DollarName '$optc')} arms: [ (case_arm pat_list: [{(SQ <'|'>)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:optc spids:[1000]) op: Equal rhs: {(0)} spids: [1000] ) ] spids: [1000] ) ] spids: [995 998 1003 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:optc spids:[1009]) op: Equal rhs: { (word_part.EscapedLiteralPart token: <Lit_EscapedChar "\\'"> ) ($ VSub_DollarName '$optc') (word_part.EscapedLiteralPart token:<Lit_EscapedChar "\\'">) } spids: [1009] ) ] spids: [1009] ) ] spids: [1006 1007 1014 16777215] ) ] spids: [988 992 1017] ) (command.AndOr ops: [Op_DPipe] children: [ (command.SimpleCommand words: [{(read)} {(line)}] more_env: [(env_pair name:IFS val:(word.EmptyWord) spids:[1020])] ) (C {(genopt_die)} {(Unexpected)} {(EOF)}) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:IFS spids:[1035]) op: Equal rhs: {($ VSub_DollarName '$safeIFS')} spids: [1035] ) ] spids: [1035] ) (command.AndOr ops: [Op_DAmp] children: [ (C {(test)} {(-n)} {(DQ ($ VSub_DollarName '$cond'))}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:o_gen spids:[1049]) op: Equal rhs: {($ VSub_DollarName '$o_gen') ($ VSub_DollarName '$nl') (DQ ($ VSub_DollarName '$cond')) } spids: [1049] ) ] spids: [1049] ) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:o_gen spids:[1057]) op: Equal rhs: {($ VSub_DollarName '$o_gen') ($ VSub_DollarName '$nl') (DQ ($ VSub_DollarName '$line') (', ') ($ VSub_DollarName '$optc') (')') ) } spids: [1057] ) ] spids: [1057] ) (command.AndOr ops: [Op_DAmp] children: [ (C {(test)} {(-n)} {(DQ ($ VSub_DollarName '$cond'))}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:o_gen spids:[1078]) op: Equal rhs: {($ VSub_DollarName '$o_gen') ($ VSub_DollarName '$nl') (DQ ('#endif')) } spids: [1078] ) ] spids: [1078] ) ] ) ] spids: [951 961 1086 16777215] ) ] spids: [651 657 1089] ) ] spids: [644 1092] ) ) (command.Case to_match: {($ VSub_DollarName '$state') (Lit_Other ':') ($ VSub_DollarName '$o_sym')} arms: [ (case_arm pat_list: [{(3) (Lit_Other ':')}] action: [(C {(genopt_die)} {(Expected)} {(optc)} {(sym)} {(at)} {(EOF)})] spids: [1104 1106 1120 16777215] ) (case_arm pat_list: [{(3) (Lit_Other ':') (Lit_Other '*')}] spids: [1123 1126 1128 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [(C {(genopt_die)} {(Missing)} {(EOF)} {(marker)})] spids: [1131 1132 1142 16777215] ) ] spids: [1095 1101 1145] ) (command.Pipeline children: [ (C {(echo)} {(DQ ($ VSub_DollarName '$o_str'))}) (C {(sort)}) (command.WhileUntil keyword: <KW_While while> cond: [ (command.Sentence child: (command.SimpleCommand words: [{(read)} {(x)} {(opts)} {(cond)}] more_env: [(env_pair name:IFS val:{(SQ <'|'>)} spids:[1162])] ) terminator: <Op_Semi ';'> ) ] body: (command.DoGroup children: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:IFS spids:[1179]) op: Equal rhs: {($ VSub_DollarName '$safeIFS')} spids: [1179] ) ] spids: [1179] ) (command.AndOr ops: [Op_DPipe] children: [ (C {(test)} {(-n)} {(DQ ($ VSub_DollarName '$x'))}) (command.ControlFlow token: <ControlFlow_Continue continue> ) ] ) (C {(genopt_scond)}) (command.AndOr ops: [Op_DAmp] children: [ (C {(test)} {(-n)} {(DQ ($ VSub_DollarName '$cond'))}) (C {(echo)} {(DQ ($ VSub_DollarName '$cond'))}) ] ) (C {(echo)} { (DQ (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ($ VSub_DollarName '$opts') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ) } ) (command.AndOr ops: [Op_DAmp] children: [ (C {(test)} {(-n)} {(DQ ($ VSub_DollarName '$cond'))}) (C {(echo)} {(DQ ('#endif'))}) ] ) ] spids: [1176 1242] ) ) (command.BraceGroup children: [ (C {(echo)} {(DQ ($ VSub_DollarName '$o_hdr'))}) (C {(echo)} {(DQ ('#ifndef ') ($ VSub_DollarName '$o_sym') ($ VSub_DollarName '$o_gen'))} ) (C {(echo)} {(DQ ('#else'))}) (C {(cat)}) (C {(echo)} {(DQ ('#undef ') ($ VSub_DollarName '$o_sym'))}) (C {(echo)} {(DQ ('#endif'))}) ] redirects: [ (redir.Redir op: <Redir_Great '>'> fd: 16777215 arg_word: {(DQ ($ VSub_DollarName '$bn') (.gen))} ) ] spids: [1246] ) ] negated: F ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:IFS spids:[1299]) op: Equal rhs: {($ VSub_DollarName '$safeIFS')} spids: [1299] ) ] spids: [1299] ) (command.ControlFlow token:<ControlFlow_Return return> arg_word:{(0)}) ] spids: [553] ) spids: [549 552] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {(x) (DQ ($ VSub_DollarName '$BUILDSH_RUN_GENOPT'))} {(Lit_Other '=')} {(x) (DQ (1))} ) terminator: <Op_Semi ';'> ) ] action: [(C {(set)} {(x)} {(-G)} {(DQ ($ VSub_DollarName '$srcfile'))}) (C {(shift)})] spids: [16777215 1327] ) ] spids: [16777215 1343] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {(x) (DQ ($ VSub_Number '$1'))} {(Lit_Other '=')} {(x) (DQ (-G))}) terminator: <Op_Semi ';'> ) ] action: [ (C {(do_genopt)} {(DQ ($ VSub_Number '$2'))}) (command.ControlFlow token: <ControlFlow_Exit exit> arg_word: {($ VSub_QMark '$?')} ) ] spids: [16777215 1362] ) ] spids: [16777215 1376] ) (C {(echo)} {(DQ ('For the build logs, demonstrate that /dev/null and /dev/tty exist:'))}) (C {(ls)} {(-l)} {(/dev/null)} {(/dev/tty)}) (command.FuncDef name: v body: (command.BraceGroup children: [ (C {($ VSub_DollarName '$e')} {(DQ ($ VSub_Star '$*'))}) (C {(eval)} {(DQ ($ VSub_At '$@'))}) ] spids: [1398] ) spids: [1394 1397] ) (command.FuncDef name: vv body: (command.BraceGroup children: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:_c spids:[1424]) op: Equal rhs: {($ VSub_Number '$1')} spids: [1424] ) ] spids: [1424] ) (C {(shift)}) (command.SimpleCommand words: [ {($ VSub_DollarName '$e')} { (DQ (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (' ') ($ VSub_Star '$*') ) } ] redirects: [(redir.Redir op:<Redir_GreatAnd '2>&'> fd:2 arg_word:{(1)})] ) (command.SimpleCommand words: [{(eval)} {(DQ ($ VSub_At '$@'))}] redirects: [ (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(vv.out)}) (redir.Redir op:<Redir_GreatAnd '2>&'> fd:2 arg_word:{(1)}) ] ) (command.SimpleCommand words: [{(sed)} {(DQ ('s\x07^\x07') (${ VSub_Name _c) (' \x07'))}] redirects: [(redir.Redir op:<Redir_Less '<'> fd:16777215 arg_word:{(vv.out)})] ) ] spids: [1421] ) spids: [1417 1420] ) (command.FuncDef name: vq body: (command.BraceGroup children:[(C {(eval)} {(DQ ($ VSub_At '$@'))})] spids:[1476]) spids: [1472 1475] ) (command.FuncDef name: rmf body: (command.BraceGroup children: [ (command.ForEach iter_name: _f iter_words: [{(DQ ($ VSub_At '$@'))}] do_arg_iter: F body: (command.DoGroup children: [ (command.Case to_match: {($ VSub_DollarName '$_f')} arms: [ (case_arm pat_list: [ {(Build.sh)} {(check.pl)} {(check.t)} {(dot.mkshrc)} {(Lit_Other '*') (.1)} {(Lit_Other '*') (.c)} {(Lit_Other '*') (.h)} {(Lit_Other '*') (.ico)} {(Lit_Other '*') (.opt)} ] spids: [1516 1538 1540 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [(C {(rm)} {(-f)} {(DQ ($ VSub_DollarName '$_f'))})] spids: [1543 1544 1554 16777215] ) ] spids: [1509 1513 1557] ) ] spids: [1506 1560] ) spids: [1500 1504] ) ] spids: [1492] ) spids: [1488 1491] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:tcfn spids:[1565]) op: Equal rhs: {(no)} spids: [1565] ) ] spids: [1565] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:bi spids:[1568]) op: Equal rhs: (word.EmptyWord) spids: [1568] ) ] spids: [1568] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:ui spids:[1570]) op: Equal rhs: (word.EmptyWord) spids: [1570] ) ] spids: [1570] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:ao spids:[1572]) op: Equal rhs: (word.EmptyWord) spids: [1572] ) ] spids: [1572] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:fx spids:[1574]) op: Equal rhs: (word.EmptyWord) spids: [1574] ) ] spids: [1574] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:me spids:[1576]) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [(C {(basename)} {(DQ ($ VSub_Number '$0'))})] ) left_token: <Left_Backtick '`'> spids: [1577 1583] ) } spids: [1576] ) ] spids: [1576] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:orig_CFLAGS spids:[1585]) op: Equal rhs: {($ VSub_DollarName '$CFLAGS')} spids: [1585] ) ] spids: [1585] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:phase spids:[1588]) op: Equal rhs: {(x)} spids: [1588] ) ] spids: [1588] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:oldish_ed spids:[1591]) op: Equal rhs: {(stdout-ed) (Lit_Comma ',') (no-stderr-ed)} spids: [1591] ) ] spids: [1591] ) (command.If arms: [ (if_arm cond: [(command.Sentence child:(C {(test)} {(-t)} {(1)}) terminator:<Op_Semi ';'>)] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:bi spids:[1609]) op: Equal rhs: {(SQ <'\x1b[1m'>)} spids: [1609] ) ] spids: [1609] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:ui spids:[1615]) op: Equal rhs: {(SQ <'\x1b[4m'>)} spids: [1615] ) ] spids: [1615] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:ao spids:[1621]) op: Equal rhs: {(SQ <'\x1b[0m'>)} spids: [1621] ) ] spids: [1621] ) ] spids: [16777215 1606] ) ] spids: [16777215 1626] ) (command.FuncDef name: upper body: (command.BraceGroup children: [ (command.Pipeline children: [ (C {(echo)} {(Lit_Other ':') (DQ ($ VSub_At '$@'))}) (C {(sed)} {(SQ <'s/^://'>)}) (C {(tr)} {($ VSub_DollarName '$alll')} {($ VSub_DollarName '$allu')}) ] negated: F ) ] spids: [1633] ) spids: [1629 1632] ) (command.FuncDef name: ac_testdone body: (command.BraceGroup children: [ (C {(eval)} {(HAVE_) ($ VSub_DollarName '$fu') (Lit_Other '=') ($ VSub_DollarName '$fv')}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:fr spids:[1680]) op: Equal rhs: {(no)} spids: [1680] ) ] spids: [1680] ) (command.AndOr ops: [Op_DPipe] children: [ (C {(test)} {(0)} {(Lit_Other '=')} {($ VSub_DollarName '$fv')}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:fr spids:[1694]) op: Equal rhs: {(yes)} spids: [1694] ) ] spids: [1694] ) ] ) (C {($ VSub_DollarName '$e')} { (DQ ($ VSub_DollarName '$bi') ('==> ') ($ VSub_DollarName '$fd') (...) ($ VSub_DollarName '$ao') (' ') ($ VSub_DollarName '$ui') ($ VSub_DollarName '$fr') ($ VSub_DollarName '$ao') ($ VSub_DollarName '$fx') ) } ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:fx spids:[1714]) op: Equal rhs: (word.EmptyWord) spids: [1714] ) ] spids: [1714] ) ] spids: [1669] ) spids: [1665 1668] ) (command.FuncDef name: ac_cache body: (command.BraceGroup children: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:f spids:[1729]) op: Equal rhs: {($ VSub_Number '$1')} spids: [1729] ) ] spids: [1729] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:fu spids:[1733]) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [(C {(upper)} {($ VSub_DollarName '$f')})] ) left_token: <Left_Backtick '`'> spids: [1734 1738] ) } spids: [1733] ) ] spids: [1733] ) (C {(eval)} {(Lit_VarLike 'fv=') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (HAVE_) ($ VSub_DollarName '$fu') } ) (command.Case to_match: {($ VSub_DollarName '$fv')} arms: [ (case_arm pat_list: [{(0)} {(1)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:fx spids:[1762]) op: Equal rhs: {(SQ <' (cached)'>)} spids: [1762] ) ] spids: [1762] ) (command.ControlFlow token: <ControlFlow_Return return> arg_word: {(0)} ) ] spids: [1756 1759 1773 16777215] ) ] spids: [1749 1753 1776] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:fv spids:[1779]) op: Equal rhs: {(0)} spids: [1779] ) ] spids: [1779] ) (command.ControlFlow token:<ControlFlow_Return return> arg_word:{(1)}) ] spids: [1726] ) spids: [1722 1725] ) (command.FuncDef name: ac_testinit body: (command.BraceGroup children: [ (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(ac_cache)} {($ VSub_Number '$1')}) terminator: <Op_Semi ';'> ) ] action: [ (command.AndOr ops: [Op_DAmp] children: [ (C {(test)} {(x) (DQ ($ VSub_Number '$2'))} {(Lit_Other '=')} {(x) (DQ ('!'))}) (C {(shift)}) ] ) (command.AndOr ops: [Op_DPipe] children: [ (C {(test)} {(x) (DQ ($ VSub_Number '$2'))} {(Lit_Other '=')} {(x) (DQ )}) (C {(shift)}) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:fd spids:[1850]) op: Equal rhs: { (word_part.BracedVarSub token: <VSub_Number 3> suffix_op: (suffix_op.StringUnary op_id: VTest_Hyphen arg_word: {($ VSub_DollarName '$f')} ) spids: [1851 1855] ) } spids: [1850] ) ] spids: [1850] ) (C {(ac_testdone)}) (command.ControlFlow token: <ControlFlow_Return return> arg_word: {(1)} ) ] spids: [16777215 1810] ) ] spids: [16777215 1866] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:fc spids:[1869]) op: Equal rhs: {(0)} spids: [1869] ) ] spids: [1869] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {(x) (DQ ($ VSub_Number '$2'))} {(Lit_Other '=')} {(x) (DQ )}) terminator: <Op_Semi ';'> ) ] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:ft spids:[1892]) op: Equal rhs: {(1)} spids: [1892] ) ] spids: [1892] ) ] spids: [16777215 1889] ) ] else_action: [ (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {(x) (DQ ($ VSub_Number '$2'))} {(Lit_Other '=')} {(x) (DQ ('!'))}) terminator: <Op_Semi ';'> ) ] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:fc spids:[1919]) op: Equal rhs: {(1)} spids: [1919] ) ] spids: [1919] ) (C {(shift)}) ] spids: [16777215 1916] ) ] spids: [16777215 1926] ) (C {(eval)} {(Lit_VarLike 'ft=') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (HAVE_) (word_part.CommandSubPart command_list: (command.CommandList children: [(C {(upper)} {($ VSub_Number '$2')})] ) left_token: <Left_Backtick '`'> spids: [1934 1938] ) } ) (C {(shift)}) ] spids: [1896 1944] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:fd spids:[1947]) op: Equal rhs: { (word_part.BracedVarSub token: <VSub_Number 3> suffix_op: (suffix_op.StringUnary op_id: VTest_Hyphen arg_word: {($ VSub_DollarName '$f')} ) spids: [1948 1952] ) } spids: [1947] ) ] spids: [1947] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {($ VSub_DollarName '$fc')} {(Lit_Other '=')} {(DQ ($ VSub_DollarName '$ft'))} ) terminator: <Op_Semi ';'> ) ] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:fv spids:[1971]) op: Equal rhs: {($ VSub_Number '$2')} spids: [1971] ) ] spids: [1971] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:fx spids:[1975]) op: Equal rhs: {(SQ <' (implied)'>)} spids: [1975] ) ] spids: [1975] ) (C {(ac_testdone)}) (command.ControlFlow token: <ControlFlow_Return return> arg_word: {(1)} ) ] spids: [16777215 1968] ) ] spids: [16777215 1989] ) (C {($ VSub_DollarName '$e')} {(...)} {($ VSub_DollarName '$fd')}) (command.ControlFlow token:<ControlFlow_Return return> arg_word:{(0)}) ] spids: [1800] ) spids: [1796 1799] ) (command.FuncDef name: ac_testnnd body: (command.BraceGroup children: [ (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {(x) (DQ ($ VSub_Number '$1'))} {(Lit_Other '=')} {(x) (DQ ('!'))}) terminator: <Op_Semi ';'> ) ] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:fr spids:[2036]) op: Equal rhs: {(1)} spids: [2036] ) ] spids: [2036] ) (C {(shift)}) ] spids: [16777215 2033] ) ] else_action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:fr spids:[2046]) op: Equal rhs: {(0)} spids: [2046] ) ] spids: [2046] ) ] spids: [2043 2050] ) (command.AndOr ops: [Op_DPipe] children: [ (C {(ac_testinit)} {(DQ ($ VSub_At '$@'))}) (command.ControlFlow token:<ControlFlow_Return return> arg_word:{(1)}) ] ) (command.SimpleCommand words: [{(cat)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(conftest.c)})] ) (C {(vv)} {(SQ <']'>)} { (DQ ($ VSub_DollarName '$CC') (' ') ($ VSub_DollarName '$CFLAGS') (' ') ($ VSub_DollarName '$CPPFLAGS') (' ') ($ VSub_DollarName '$LDFLAGS') (' ') ($ VSub_DollarName '$NOWARN') (' conftest.c ') ($ VSub_DollarName '$LIBS') (' ') ($ VSub_DollarName '$ccpr') ) } ) (command.AndOr ops: [Op_DAmp Op_DAmp] children: [ (C {(test)} {($ VSub_DollarName '$tcfn')} {(Lit_Other '=')} {(no)}) (C {(test)} {(-f)} {(a.out)}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:tcfn spids:[2113]) op: Equal rhs: {(a.out)} spids: [2113] ) ] spids: [2113] ) ] ) (command.AndOr ops: [Op_DAmp Op_DAmp] children: [ (C {(test)} {($ VSub_DollarName '$tcfn')} {(Lit_Other '=')} {(no)}) (C {(test)} {(-f)} {(a.exe)}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:tcfn spids:[2135]) op: Equal rhs: {(a.exe)} spids: [2135] ) ] spids: [2135] ) ] ) (command.AndOr ops: [Op_DAmp Op_DAmp] children: [ (C {(test)} {($ VSub_DollarName '$tcfn')} {(Lit_Other '=')} {(no)}) (C {(test)} {(-f)} {(conftest.exe)}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:tcfn spids:[2157]) op: Equal rhs: {(conftest.exe)} spids: [2157] ) ] spids: [2157] ) ] ) (command.AndOr ops: [Op_DAmp Op_DAmp] children: [ (C {(test)} {($ VSub_DollarName '$tcfn')} {(Lit_Other '=')} {(no)}) (C {(test)} {(-f)} {(conftest)}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:tcfn spids:[2179]) op: Equal rhs: {(conftest)} spids: [2179] ) ] spids: [2179] ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {(-f)} {($ VSub_DollarName '$tcfn')}) terminator: <Op_Semi ';'> ) ] action: [ (command.AndOr ops: [Op_DPipe] children: [ (C {(test)} {(1)} {(Lit_Other '=')} {($ VSub_DollarName '$fr')}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:fv spids:[2205]) op: Equal rhs: {(1)} spids: [2205] ) ] spids: [2205] ) ] ) ] spids: [16777215 2192] ) ] else_action: [ (command.AndOr ops: [Op_DPipe] children: [ (C {(test)} {(0)} {(Lit_Other '=')} {($ VSub_DollarName '$fr')}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:fv spids:[2222]) op: Equal rhs: {(1)} spids: [2222] ) ] spids: [2222] ) ] ) ] spids: [2209 2226] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:vscan spids:[2229]) op: Equal rhs: (word.EmptyWord) spids: [2229] ) ] spids: [2229] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {($ VSub_DollarName '$phase')} {(Lit_Other '=')} {(u)}) terminator: <Op_Semi ';'> ) ] action: [ (command.AndOr ops: [Op_DAmp] children: [ (C {(test)} {($ VSub_DollarName '$ct')} {(Lit_Other '=')} {(gcc)}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:vscan spids:[2256]) op: Equal rhs: {(SQ <'unrecogni[sz]ed'>)} spids: [2256] ) ] spids: [2256] ) ] ) (command.AndOr ops: [Op_DAmp] children: [ (C {(test)} {($ VSub_DollarName '$ct')} {(Lit_Other '=')} {(hpcc)}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:vscan spids:[2272]) op: Equal rhs: {(SQ <unsupported>)} spids: [2272] ) ] spids: [2272] ) ] ) (command.AndOr ops: [Op_DAmp] children: [ (C {(test)} {($ VSub_DollarName '$ct')} {(Lit_Other '=')} {(pcc)}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:vscan spids:[2288]) op: Equal rhs: {(SQ <unsupported>)} spids: [2288] ) ] spids: [2288] ) ] ) (command.AndOr ops: [Op_DAmp] children: [ (C {(test)} {($ VSub_DollarName '$ct')} {(Lit_Other '=')} {(sunpro)}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:vscan spids:[2304]) op: Equal rhs: {(SQ <'-e ignored -e turned.off'>)} spids: [2304] ) ] spids: [2304] ) ] ) ] spids: [16777215 2243] ) ] spids: [16777215 2310] ) (command.AndOr ops: [Op_DAmp Op_DAmp] children: [ (C {(test)} {(-n)} {(DQ ($ VSub_DollarName '$vscan'))}) (command.SimpleCommand words: [{(grep)} {($ VSub_DollarName '$vscan')} {(vv.out)}] redirects: [ (redir.Redir op: <Redir_Great '>'> fd: 16777215 arg_word: {(/dev/null)} ) (redir.Redir op:<Redir_GreatAnd '2>&'> fd:2 arg_word:{(1)}) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:fv spids:[2337]) op: Equal rhs: {($ VSub_DollarName '$fr')} spids: [2337] ) ] spids: [2337] ) ] ) (command.ControlFlow token:<ControlFlow_Return return> arg_word:{(0)}) ] spids: [2013] ) spids: [2009 2012] ) (command.FuncDef name: ac_testn body: (command.BraceGroup children: [ (command.AndOr ops: [Op_DPipe] children: [ (C {(ac_testnnd)} {(DQ ($ VSub_At '$@'))}) (command.ControlFlow token:<ControlFlow_Return return>) ] ) (C {(rmf)} {(conftest.c)} {(conftest.o)} {(${ VSub_Name tcfn) (Lit_Other '*')} {(vv.out)}) (C {(ac_testdone)}) ] spids: [2351] ) spids: [2347 2350] ) (command.FuncDef name: ac_ifcpp body: (command.BraceGroup children: [ (command.Sentence child: (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:expr spids:[2394]) op: Equal rhs: {($ VSub_Number '$1')} spids: [2394] ) ] spids: [2394] ) terminator: <Op_Semi ';'> ) (C {(shift)}) (command.SimpleCommand words: [{(ac_testn)} {(DQ ($ VSub_At '$@'))}] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(EOF)} here_end_span_id: 2423 stdin_parts: [ ('#include <unistd.h>\n') ('extern int thiswillneverbedefinedIhope(void);\n') ('int main(void) { return (isatty(0) +\n') ('#') ($ VSub_DollarName '$expr') ('\n') (' 0\n') ('#else\n') ('/* force a failure: expr is false */\n') (' thiswillneverbedefinedIhope()\n') ('#endif\n') (' ); }\n') ] ) ] ) (command.AndOr ops: [Op_DAmp] children: [ (C {(test)} {(x) (DQ ($ VSub_Number '$1'))} {(Lit_Other '=')} {(x) (DQ ('!'))}) (C {(shift)}) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:f spids:[2444]) op: Equal rhs: {($ VSub_Number '$1')} spids: [2444] ) ] spids: [2444] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:fu spids:[2448]) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [(C {(upper)} {($ VSub_DollarName '$f')})] ) left_token: <Left_Backtick '`'> spids: [2449 2453] ) } spids: [2448] ) ] spids: [2448] ) (C {(eval)} {(Lit_VarLike 'fv=') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (HAVE_) ($ VSub_DollarName '$fu') } ) (C {(test)} {(x) (DQ ($ VSub_DollarName '$fv'))} {(Lit_Other '=')} {(x) (DQ (1))}) ] spids: [2391] ) spids: [2387 2390] ) (command.FuncDef name: add_cppflags body: (command.BraceGroup children: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:CPPFLAGS spids:[2488]) op: Equal rhs: {(DQ ($ VSub_DollarName '$CPPFLAGS') (' ') ($ VSub_Star '$*'))} spids: [2488] ) ] spids: [2488] ) ] spids: [2485] ) spids: [2481 2484] ) (command.FuncDef name: ac_cppflags body: (command.BraceGroup children: [ (command.AndOr ops: [Op_DPipe] children: [ (C {(test)} {(x) (DQ ($ VSub_Number '$1'))} {(Lit_Other '=')} {(x) (DQ )}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:fu spids:[2520]) op: Equal rhs: {($ VSub_Number '$1')} spids: [2520] ) ] spids: [2520] ) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:fv spids:[2524]) op: Equal rhs: {($ VSub_Number '$2')} spids: [2524] ) ] spids: [2524] ) (command.AndOr ops: [Op_DAmp] children: [ (C {(test)} {(x) (DQ ($ VSub_Number '$2'))} {(Lit_Other '=')} {(x) (DQ )}) (C {(eval)} {(Lit_VarLike 'fv=') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (HAVE_) ($ VSub_DollarName '$fu') } ) ] ) (C {(add_cppflags)} {(-DHAVE_) ($ VSub_DollarName '$fu') (Lit_Other '=') ($ VSub_DollarName '$fv')} ) ] spids: [2502] ) spids: [2498 2501] ) (command.FuncDef name: ac_test body: (command.BraceGroup children: [(C {(ac_testn)} {(DQ ($ VSub_At '$@'))}) (C {(ac_cppflags)})] spids: [2565] ) spids: [2561 2564] ) (command.FuncDef name: ac_flags body: (command.BraceGroup children: [ (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {(x) (DQ ($ VSub_Number '$1'))} {(Lit_Other '=')} {(x) (DQ (-))}) terminator: <Op_Semi ';'> ) ] action: [ (C {(shift)}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:hf spids:[2613]) op: Equal rhs: {(1)} spids: [2613] ) ] spids: [2613] ) ] spids: [16777215 2607] ) ] else_action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:hf spids:[2620]) op: Equal rhs: {(0)} spids: [2620] ) ] spids: [2620] ) ] spids: [2617 2624] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:fa spids:[2627]) op: Equal rhs: {($ VSub_Number '$1')} spids: [2627] ) ] spids: [2627] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:vn spids:[2631]) op: Equal rhs: {($ VSub_Number '$2')} spids: [2631] ) ] spids: [2631] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:f spids:[2635]) op: Equal rhs: {($ VSub_Number '$3')} spids: [2635] ) ] spids: [2635] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:ft spids:[2639]) op: Equal rhs: {($ VSub_Number '$4')} spids: [2639] ) ] spids: [2639] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:fl spids:[2643]) op: Equal rhs: {($ VSub_Number '$5')} spids: [2643] ) ] spids: [2643] ) (command.AndOr ops: [Op_DAmp] children: [ (C {(test)} {(x) (DQ ($ VSub_DollarName '$ft'))} {(Lit_Other '=')} {(x) (DQ )}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:ft spids:[2662]) op: Equal rhs: {(DQ ('if ') ($ VSub_DollarName '$f') (' can be used'))} spids: [2662] ) ] spids: [2662] ) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:save_CFLAGS spids:[2670]) op: Equal rhs: {($ VSub_DollarName '$CFLAGS')} spids: [2670] ) ] spids: [2670] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:CFLAGS spids:[2674]) op: Equal rhs: {(DQ ($ VSub_DollarName '$CFLAGS') (' ') ($ VSub_DollarName '$f'))} spids: [2674] ) ] spids: [2674] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {(-n)} {(DQ ($ VSub_DollarName '$fl'))}) terminator: <Op_Semi ';'> ) ] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:save_LDFLAGS spids:[2696]) op: Equal rhs: {($ VSub_DollarName '$LDFLAGS')} spids: [2696] ) ] spids: [2696] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:LDFLAGS spids:[2700]) op: Equal rhs: {(DQ ($ VSub_DollarName '$LDFLAGS') (' ') ($ VSub_DollarName '$fl'))} spids: [2700] ) ] spids: [2700] ) ] spids: [16777215 2693] ) ] spids: [16777215 2708] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {(1)} {(Lit_Other '=')} {($ VSub_DollarName '$hf')}) terminator: <Op_Semi ';'> ) ] action: [ (C {(ac_testn)} {(can_) ($ VSub_DollarName '$vn')} {(SQ )} {(DQ ($ VSub_DollarName '$ft'))} ) ] spids: [16777215 2722] ) ] else_action: [ (command.SimpleCommand words: [ {(ac_testn)} {(can_) ($ VSub_DollarName '$vn')} {(SQ )} {(DQ ($ VSub_DollarName '$ft'))} ] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 2761 stdin_parts: [ ("/* evil apo'stroph in comment test */\n") ('#include <unistd.h>\n') ('int main(void) { return (isatty(0)); }\n') ] ) ] ) ] spids: [2738 2763] ) (C {(eval)} {(Lit_VarLike 'fv=') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (HAVE_CAN_) (word_part.CommandSubPart command_list: (command.CommandList children: [(C {(upper)} {($ VSub_DollarName '$vn')})] ) left_token: <Left_Backtick '`'> spids: [2771 2775] ) } ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {(-n)} {(DQ ($ VSub_DollarName '$fl'))}) terminator: <Op_Semi ';'> ) ] action: [ (command.AndOr ops: [Op_DPipe] children: [ (C {(test)} {(11)} {(Lit_Other '=')} {($ VSub_DollarName '$fa') ($ VSub_DollarName '$fv')} ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:LDFLAGS spids:[2803]) op: Equal rhs: {($ VSub_DollarName '$save_LDFLAGS')} spids: [2803] ) ] spids: [2803] ) ] ) ] spids: [16777215 2789] ) ] spids: [16777215 2807] ) (command.AndOr ops: [Op_DPipe] children: [ (C {(test)} {(11)} {(Lit_Other '=')} {($ VSub_DollarName '$fa') ($ VSub_DollarName '$fv')} ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:CFLAGS spids:[2821]) op: Equal rhs: {($ VSub_DollarName '$save_CFLAGS')} spids: [2821] ) ] spids: [2821] ) ] ) ] spids: [2587] ) spids: [2583 2586] ) (command.FuncDef name: ac_header body: (command.BraceGroup children: [ (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {(x) (DQ ($ VSub_Number '$1'))} {(Lit_Other '=')} {(x) (DQ ('!'))}) terminator: <Op_Semi ';'> ) ] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:na spids:[2857]) op: Equal rhs: {(1)} spids: [2857] ) ] spids: [2857] ) (C {(shift)}) ] spids: [16777215 2854] ) ] else_action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:na spids:[2867]) op: Equal rhs: {(0)} spids: [2867] ) ] spids: [2867] ) ] spids: [2864 2871] ) (command.Sentence child: (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:hf spids:[2874]) op: Equal rhs: {($ VSub_Number '$1')} spids: [2874] ) ] spids: [2874] ) terminator: <Op_Semi ';'> ) (C {(shift)}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:hv spids:[2881]) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [ (command.Pipeline children: [ (C {(echo)} {(DQ ($ VSub_DollarName '$hf'))}) (C {(tr)} {(-d)} {(SQ <'\\012\\015'>)}) (C {(tr)} {(-c)} {($ VSub_DollarName '$alll') ($ VSub_DollarName '$allu') ($ VSub_DollarName '$alln') } {($ VSub_DollarName '$alls')} ) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [2882 2910] ) } spids: [2881] ) ] spids: [2881] ) (command.SimpleCommand words: [{(echo)} {(DQ ('/* NeXTstep bug workaround */'))}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(x)})] ) (command.ForEach iter_name: i do_arg_iter: T body: (command.DoGroup children: [ (command.Case to_match: {($ VSub_DollarName '$i')} arms: [ (case_arm pat_list: [{(_time)}] action: [ (command.SimpleCommand words: [{(echo)} {(SQ <'#if HAVE_BOTH_TIME_H'>)}] redirects: [ (redir.Redir op: <Redir_DGreat '>>'> fd: 16777215 arg_word: {(x)} ) ] ) (command.SimpleCommand words: [{(echo)} {(SQ <'#include <sys/time.h>'>)}] redirects: [ (redir.Redir op: <Redir_DGreat '>>'> fd: 16777215 arg_word: {(x)} ) ] ) (command.SimpleCommand words: [{(echo)} {(SQ <'#include <time.h>'>)}] redirects: [ (redir.Redir op: <Redir_DGreat '>>'> fd: 16777215 arg_word: {(x)} ) ] ) (command.SimpleCommand words: [{(echo)} {(SQ <'#elif HAVE_SYS_TIME_H'>)}] redirects: [ (redir.Redir op: <Redir_DGreat '>>'> fd: 16777215 arg_word: {(x)} ) ] ) (command.SimpleCommand words: [{(echo)} {(SQ <'#include <sys/time.h>'>)}] redirects: [ (redir.Redir op: <Redir_DGreat '>>'> fd: 16777215 arg_word: {(x)} ) ] ) (command.SimpleCommand words: [{(echo)} {(SQ <'#elif HAVE_TIME_H'>)}] redirects: [ (redir.Redir op: <Redir_DGreat '>>'> fd: 16777215 arg_word: {(x)} ) ] ) (command.SimpleCommand words: [{(echo)} {(SQ <'#include <time.h>'>)}] redirects: [ (redir.Redir op: <Redir_DGreat '>>'> fd: 16777215 arg_word: {(x)} ) ] ) (command.SimpleCommand words: [{(echo)} {(SQ <'#endif'>)}] redirects: [ (redir.Redir op: <Redir_DGreat '>>'> fd: 16777215 arg_word: {(x)} ) ] ) ] spids: [2938 2939 3022 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (command.SimpleCommand words: [{(echo)} {(DQ ('#include <') ($ VSub_DollarName '$i') ('>'))}] redirects: [ (redir.Redir op: <Redir_DGreat '>>'> fd: 16777215 arg_word: {(x)} ) ] ) ] spids: [3025 3026 3041 16777215] ) ] spids: [2931 2935 3044] ) ] spids: [2928 3047] ) spids: [16777215 16777215] ) (command.SimpleCommand words: [{(echo)} {(DQ ('#include <') ($ VSub_DollarName '$hf') ('>'))}] redirects: [(redir.Redir op:<Redir_DGreat '>>'> fd:16777215 arg_word:{(x)})] ) (command.SimpleCommand words: [{(echo)} {(SQ <'#include <unistd.h>'>)}] redirects: [(redir.Redir op:<Redir_DGreat '>>'> fd:16777215 arg_word:{(x)})] ) (command.SimpleCommand words: [{(echo)} {(SQ <'int main(void) { return (isatty(0)); }'>)}] redirects: [(redir.Redir op:<Redir_DGreat '>>'> fd:16777215 arg_word:{(x)})] ) (command.SimpleCommand words: [ {(ac_testn)} {(DQ ($ VSub_DollarName '$hv'))} {(DQ )} {(DQ ('<') ($ VSub_DollarName '$hf') ('>'))} ] redirects: [(redir.Redir op:<Redir_Less '<'> fd:16777215 arg_word:{(x)})] ) (C {(rmf)} {(x)}) (command.AndOr ops: [Op_DPipe] children: [ (C {(test)} {(1)} {(Lit_Other '=')} {($ VSub_DollarName '$na')}) (C {(ac_cppflags)}) ] ) ] spids: [2834] ) spids: [2830 2833] ) (command.FuncDef name: addsrcs body: (command.BraceGroup children: [ (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {(x) (DQ ($ VSub_Number '$1'))} {(Lit_Other '=')} {(x) (DQ ('!'))}) terminator: <Op_Semi ';'> ) ] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:fr spids:[3148]) op: Equal rhs: {(0)} spids: [3148] ) ] spids: [3148] ) (C {(shift)}) ] spids: [16777215 3145] ) ] else_action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:fr spids:[3158]) op: Equal rhs: {(1)} spids: [3158] ) ] spids: [3158] ) ] spids: [3155 3162] ) (C {(eval)} {(Lit_VarLike 'i=') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ($ VSub_Number '$1') } ) (command.AndOr ops: [Op_DAmp] children: [ (C {(test)} {($ VSub_DollarName '$fr')} {(Lit_Other '=')} {(DQ ($ VSub_DollarName '$i'))}) (command.Case to_match: {(DQ (' ') ($ VSub_DollarName '$SRCS') (' '))} arms: [ (case_arm pat_list: [ {(Lit_Other '*') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\ '>) ($ VSub_Number '$2') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\ '>) (Lit_Other '*') } ] spids: [3195 3200 3202 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:SRCS spids:[3208]) op: Equal rhs: {(DQ ($ VSub_DollarName '$SRCS') (' ') ($ VSub_Number '$2'))} spids: [3208] ) ] spids: [3208] ) ] spids: [3205 3206 3215 16777215] ) ] spids: [3184 3192 3218] ) ] ) ] spids: [3125] ) spids: [3121 3124] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:curdir spids:[3224]) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children:[(C {(pwd)})]) left_token: <Left_Backtick '`'> spids: [3225 3227] ) } spids: [3224] ) (assign_pair lhs: (lhs_expr.LhsName name:srcdir spids:[3229]) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [ (command.SimpleCommand words: [{(dirname)} {(DQ ($ VSub_Number '$0'))}] redirects: [(redir.Redir op:<Redir_Great '2>'> fd:2 arg_word:{(/dev/null)})] ) ] ) left_token: <Left_Backtick '`'> spids: [3230 3239] ) } spids: [3229] ) ] spids: [3224] ) (command.Case to_match: {(x) ($ VSub_DollarName '$srcdir')} arms: [ (case_arm pat_list: [{(x)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:srcdir spids:[3252]) op: Equal rhs: {(.)} spids: [3252] ) ] spids: [3252] ) ] spids: [3248 3249 3256 16777215] ) (case_arm pat_list: [ {(Lit_Other '*') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\ '>) (Lit_Other '*') } {(Lit_Other '*') (DQ ('\t')) (Lit_Other '*')} {(Lit_Other '*') (DQ ($ VSub_DollarName '$nl')) (Lit_Other '*')} ] action: [ (command.SimpleCommand words: [ {(echo)} {(Source)} {(directory)} {(should)} {(not)} {(contain)} {(space)} {(or)} {(tab)} {(or)} {(newline.)} ] redirects: [(redir.Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})] ) (command.SimpleCommand words: [{(echo)} {(Errors)} {(may)} {(occur.)}] redirects: [(redir.Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})] ) ] spids: [3258 3273 3314 16777215] ) (case_arm pat_list: [{(Lit_Other '*') (DQ ("'")) (Lit_Other '*')}] action: [ (C {(echo)} {(Source)} {(directory)} {(must)} {(not)} {(contain)} {(single)} {(quotes.)}) (command.ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] spids: [3316 3321 3346 16777215] ) ] spids: [3241 3246 3348] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:dstversion spids:[3350]) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [ (C {(sed)} {(-n)} {(SQ <'/define MKSH_VERSION/s/^.*"\\([^"]*\\)".*$/\\1/p'>)} {(DQ ($ VSub_DollarName '$srcdir') (/sh.h))} ) ] ) left_token: <Left_Backtick '`'> spids: [3351 3364] ) } spids: [3350] ) ] spids: [3350] ) (C {(add_cppflags)} {(-DMKSH_BUILDSH)}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:e spids:[3371]) op: Equal rhs: {(echo)} spids: [3371] ) ] spids: [3371] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:r spids:[3374]) op: Equal rhs: {(0)} spids: [3374] ) ] spids: [3374] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:eq spids:[3377]) op: Equal rhs: {(0)} spids: [3377] ) ] spids: [3377] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:pm spids:[3380]) op: Equal rhs: {(0)} spids: [3380] ) ] spids: [3380] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:cm spids:[3383]) op: Equal rhs: {(normal)} spids: [3383] ) ] spids: [3383] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:optflags spids:[3386]) op: Equal rhs: {(-std-compile-opts)} spids: [3386] ) ] spids: [3386] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:check_categories spids:[3389]) op: Equal rhs: (word.EmptyWord) spids: [3389] ) ] spids: [3389] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:last spids:[3391]) op: Equal rhs: (word.EmptyWord) spids: [3391] ) ] spids: [3391] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:tfn spids:[3393]) op: Equal rhs: (word.EmptyWord) spids: [3393] ) ] spids: [3393] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:legacy spids:[3395]) op: Equal rhs: {(0)} spids: [3395] ) ] spids: [3395] ) (command.ForEach iter_name: i do_arg_iter: T body: (command.DoGroup children: [ (command.Case to_match: {($ VSub_DollarName '$last') (Lit_Other ':') ($ VSub_DollarName '$i')} arms: [ (case_arm pat_list: [ {(c) (Lit_Other ':') (combine)} {(c) (Lit_Other ':') (dragonegg)} {(c) (Lit_Other ':') (llvm)} {(c) (Lit_Other ':') (lto)} ] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:cm spids:[3433]) op: Equal rhs: {($ VSub_DollarName '$i')} spids: [3433] ) ] spids: [3433] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:last spids:[3437]) op: Equal rhs: (word.EmptyWord) spids: [3437] ) ] spids: [3437] ) ] spids: [3415 3430 3440 16777215] ) (case_arm pat_list: [{(c) (Lit_Other ':') (Lit_Other '*')}] action: [ (command.SimpleCommand words: [ {(echo)} { (DQ ($ VSub_DollarName '$me') (": Unknown option -c '") ($ VSub_DollarName '$i') ("'!") ) } ] redirects: [(redir.Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})] ) (command.ControlFlow token: <ControlFlow_Exit exit> arg_word: {(1)} ) ] spids: [3443 3446 3467 16777215] ) (case_arm pat_list: [{(o) (Lit_Other ':') (Lit_Other '*')}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:optflags spids:[3476]) op: Equal rhs: {($ VSub_DollarName '$i')} spids: [3476] ) ] spids: [3476] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:last spids:[3480]) op: Equal rhs: (word.EmptyWord) spids: [3480] ) ] spids: [3480] ) ] spids: [3470 3473 3483 16777215] ) (case_arm pat_list: [{(t) (Lit_Other ':') (Lit_Other '*')}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:tfn spids:[3492]) op: Equal rhs: {($ VSub_DollarName '$i')} spids: [3492] ) ] spids: [3492] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:last spids:[3496]) op: Equal rhs: (word.EmptyWord) spids: [3496] ) ] spids: [3496] ) ] spids: [3486 3489 3499 16777215] ) (case_arm pat_list: [{(Lit_Other ':') (-c)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:last spids:[3507]) op: Equal rhs: {(c)} spids: [3507] ) ] spids: [3507] ) ] spids: [3502 3504 3511 16777215] ) (case_arm pat_list: [{(Lit_Other ':') (-G)}] action: [ (command.SimpleCommand words: [{(echo)} {(DQ ($ VSub_DollarName '$me') (": Do not call me with '-G'!"))}] redirects: [(redir.Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})] ) (command.ControlFlow token: <ControlFlow_Exit exit> arg_word: {(1)} ) ] spids: [3514 3516 3535 16777215] ) (case_arm pat_list: [{(Lit_Other ':') (-g)}] action: [ (C {(add_cppflags)} {(-DDEBUG)}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:CFLAGS spids:[3552]) op: Equal rhs: {(DQ ($ VSub_DollarName '$CFLAGS') (' -g3 -fno-builtin'))} spids: [3552] ) ] spids: [3552] ) ] spids: [3538 3540 3559 16777215] ) (case_arm pat_list: [{(Lit_Other ':') (-j)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:pm spids:[3567]) op: Equal rhs: {(1)} spids: [3567] ) ] spids: [3567] ) ] spids: [3562 3564 3571 16777215] ) (case_arm pat_list: [{(Lit_Other ':') (-L)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:legacy spids:[3579]) op: Equal rhs: {(1)} spids: [3579] ) ] spids: [3579] ) ] spids: [3574 3576 3583 16777215] ) (case_arm pat_list: [{(Lit_Other ':') (Lit_Other '+') (L)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:legacy spids:[3592]) op: Equal rhs: {(0)} spids: [3592] ) ] spids: [3592] ) ] spids: [3586 3589 3596 16777215] ) (case_arm pat_list: [{(Lit_Other ':') (-M)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:cm spids:[3604]) op: Equal rhs: {(makefile)} spids: [3604] ) ] spids: [3604] ) ] spids: [3599 3601 3608 16777215] ) (case_arm pat_list: [{(Lit_Other ':') (-O)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:optflags spids:[3616]) op: Equal rhs: {(-std-compile-opts)} spids: [3616] ) ] spids: [3616] ) ] spids: [3611 3613 3620 16777215] ) (case_arm pat_list: [{(Lit_Other ':') (-o)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:last spids:[3628]) op: Equal rhs: {(o)} spids: [3628] ) ] spids: [3628] ) ] spids: [3623 3625 3632 16777215] ) (case_arm pat_list: [{(Lit_Other ':') (-Q)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:eq spids:[3640]) op: Equal rhs: {(1)} spids: [3640] ) ] spids: [3640] ) ] spids: [3635 3637 3644 16777215] ) (case_arm pat_list: [{(Lit_Other ':') (-r)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:r spids:[3652]) op: Equal rhs: {(1)} spids: [3652] ) ] spids: [3652] ) ] spids: [3647 3649 3656 16777215] ) (case_arm pat_list: [{(Lit_Other ':') (-t)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:last spids:[3664]) op: Equal rhs: {(t)} spids: [3664] ) ] spids: [3664] ) ] spids: [3659 3661 3668 16777215] ) (case_arm pat_list: [{(Lit_Other ':') (-v)}] action: [ (C {(echo)} {(DQ ('Build.sh ') ($ VSub_DollarName '$srcversion'))}) (C {(echo)} {(DQ ('for mksh ') ($ VSub_DollarName '$dstversion'))}) (command.ControlFlow token: <ControlFlow_Exit exit> arg_word: {(0)} ) ] spids: [3671 3673 3697 16777215] ) (case_arm pat_list: [{(Lit_Other ':') (Lit_Other '*')}] action: [ (command.SimpleCommand words: [ {(echo)} { (DQ ($ VSub_DollarName '$me') (": Unknown option '") ($ VSub_DollarName '$i') ("'!") ) } ] redirects: [(redir.Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})] ) (command.ControlFlow token: <ControlFlow_Exit exit> arg_word: {(1)} ) ] spids: [3700 3702 3723 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (command.SimpleCommand words: [ {(echo)} { (DQ ($ VSub_DollarName '$me') (": Unknown option -'") ($ VSub_DollarName '$last') ("' '") ($ VSub_DollarName '$i') ("'!") ) } ] redirects: [(redir.Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})] ) (command.ControlFlow token: <ControlFlow_Exit exit> arg_word: {(1)} ) ] spids: [3726 3727 3750 16777215] ) ] spids: [3406 3412 3753] ) ] spids: [3403 3755] ) spids: [16777215 16777215] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {(-n)} {(DQ ($ VSub_DollarName '$last'))}) terminator: <Op_Semi ';'> ) ] action: [ (command.SimpleCommand words: [ {(echo)} { (DQ ($ VSub_DollarName '$me') (": Option -'") ($ VSub_DollarName '$last') ("' not followed by argument!") ) } ] redirects: [(redir.Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})] ) (command.ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] spids: [16777215 3768] ) ] spids: [16777215 3788] ) (command.AndOr ops: [Op_DAmp] children: [ (C {(test)} {(-z)} {(DQ ($ VSub_DollarName '$tfn'))}) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {($ VSub_DollarName '$legacy')} {(Lit_Other '=')} {(0)}) terminator: <Op_Semi ';'> ) ] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:tfn spids:[3815]) op: Equal rhs: {(mksh)} spids: [3815] ) ] spids: [3815] ) ] spids: [16777215 3812] ) ] else_action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:tfn spids:[3821]) op: Equal rhs: {(lksh)} spids: [3821] ) ] spids: [3821] ) ] spids: [3818 3824] ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.AndOr ops: [Op_DPipe] children: [ (C {(test)} {(-d)} {($ VSub_DollarName '$tfn')}) (C {(test)} {(-d)} {($ VSub_DollarName '$tfn') (.exe)}) ] ) terminator: <Op_Semi ';'> ) ] action: [ (command.SimpleCommand words: [ {(echo)} { (DQ ($ VSub_DollarName '$me') (': Error: ./') ($ VSub_DollarName '$tfn') (' is a directory!') ) } ] redirects: [(redir.Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})] ) (command.ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] spids: [16777215 3844] ) ] spids: [16777215 3864] ) (C {(rmf)} {(a.exe) (Lit_Other '*')} {(a.out) (Lit_Other '*')} {(conftest.c)} {(conftest.exe) (Lit_Other '*')} {(Lit_Other '*') (core)} {(core.) (Lit_Other '*')} {(${ VSub_Name tfn) (Lit_Other '*')} {(Lit_Other '*') (.bc)} {(Lit_Other '*') (.dbg)} {(Lit_Other '*') (.ll)} {(Lit_Other '*') (.o)} {(Lit_Other '*') (.gen)} {(Rebuild.sh)} {(lft)} {(no)} {(signames.inc)} {(test.sh)} {(x)} {(vv.out)} ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:SRCS spids:[3922]) op: Equal rhs: {(DQ ('lalloc.c eval.c exec.c expr.c funcs.c histrap.c jobs.c'))} spids: [3922] ) ] spids: [3922] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:SRCS spids:[3927]) op: Equal rhs: {(DQ ($ VSub_DollarName '$SRCS') (' lex.c main.c misc.c shf.c syn.c tree.c var.c'))} spids: [3927] ) ] spids: [3927] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {($ VSub_DollarName '$legacy')} {(Lit_Other '=')} {(0)}) terminator: <Op_Semi ';'> ) ] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:SRCS spids:[3948]) op: Equal rhs: {(DQ ($ VSub_DollarName '$SRCS') (' edit.c'))} spids: [3948] ) ] spids: [3948] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:check_categories spids:[3955]) op: Equal rhs: {(DQ ($ VSub_DollarName '$check_categories') (' shell:legacy-no int:32'))} spids: [3955] ) ] spids: [3955] ) ] spids: [16777215 3945] ) ] else_action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:check_categories spids:[3964]) op: Equal rhs: {(DQ ($ VSub_DollarName '$check_categories') (' shell:legacy-yes'))} spids: [3964] ) ] spids: [3964] ) (C {(add_cppflags)} {(-DMKSH_LEGACY_MODE)}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:HAVE_PERSISTENT_HISTORY spids:[3976]) op: Equal rhs: {(0)} spids: [3976] ) ] spids: [3976] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:HAVE_ISSET_MKSH_CONSERVATIVE_FDS spids:[3980]) op: Equal rhs: {(1)} spids: [3980] ) ] spids: [3980] ) ] spids: [3961 3986] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {(x) (DQ ($ VSub_DollarName '$srcdir'))} {(Lit_Other '=')} {(x) (DQ (.))}) terminator: <Op_Semi ';'> ) ] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:CPPFLAGS spids:[4009]) op: Equal rhs: {(DQ ('-I. ') ($ VSub_DollarName '$CPPFLAGS'))} spids: [4009] ) ] spids: [4009] ) ] spids: [16777215 4006] ) ] else_action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:CPPFLAGS spids:[4018]) op: Equal rhs: { (DQ ("-I. -I'") ($ VSub_DollarName '$srcdir') ("' ") ($ VSub_DollarName '$CPPFLAGS')) } spids: [4018] ) ] spids: [4018] ) ] spids: [4015 4026] ) (command.AndOr ops: [Op_DAmp] children: [ (C {(test)} {(-n)} {(DQ ($ VSub_DollarName '$LDSTATIC'))}) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {(-n)} {(DQ ($ VSub_DollarName '$LDFLAGS'))}) terminator: <Op_Semi ';'> ) ] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:LDFLAGS spids:[4052]) op: Equal rhs: {(DQ ($ VSub_DollarName '$LDFLAGS') (' ') ($ VSub_DollarName '$LDSTATIC'))} spids: [4052] ) ] spids: [4052] ) ] spids: [16777215 4049] ) ] else_action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:LDFLAGS spids:[4062]) op: Equal rhs: {($ VSub_DollarName '$LDSTATIC')} spids: [4062] ) ] spids: [4062] ) ] spids: [4059 4065] ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {(-z)} {(DQ ($ VSub_DollarName '$TARGET_OS'))}) terminator: <Op_Semi ';'> ) ] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:x spids:[4082]) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [ (command.AndOr ops: [Op_DPipe] children: [ (command.SimpleCommand words: [{(uname)} {(-s)}] redirects: [ (redir.Redir op: <Redir_Great '2>'> fd: 2 arg_word: {(/dev/null)} ) ] ) (C {(uname)}) ] ) ] ) left_token: <Left_Backtick '`'> spids: [4083 4094] ) } spids: [4082] ) ] spids: [4082] ) (command.AndOr ops: [Op_DPipe] children: [ (C {(test)} {(x) (DQ ($ VSub_DollarName '$x'))} {(Lit_Other '=')} {(x) (DQ (word_part.CommandSubPart command_list: (command.CommandList children: [ (command.SimpleCommand words: [{(uname)} {(-n)}] redirects: [ (redir.Redir op: <Redir_Great '2>'> fd: 2 arg_word: {(/dev/null)} ) ] ) ] ) left_token: <Left_Backtick '`'> spids: [4108 4115] ) ) } ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:TARGET_OS spids:[4120]) op: Equal rhs: {($ VSub_DollarName '$x')} spids: [4120] ) ] spids: [4120] ) ] ) ] spids: [16777215 4079] ) ] spids: [16777215 4123] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {(-z)} {(DQ ($ VSub_DollarName '$TARGET_OS'))}) terminator: <Op_Semi ';'> ) ] action: [ (command.SimpleCommand words: [ {(echo)} {(DQ ($ VSub_DollarName '$me') (': Set TARGET_OS, your uname is broken!'))} ] redirects: [(redir.Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})] ) (command.ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] spids: [16777215 4136] ) ] spids: [16777215 4154] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:oswarn spids:[4156]) op: Equal rhs: (word.EmptyWord) spids: [4156] ) ] spids: [4156] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:ccpc spids:[4158]) op: Equal rhs: {(-Wc) (Lit_Comma ',')} spids: [4158] ) ] spids: [4158] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:ccpl spids:[4162]) op: Equal rhs: {(-Wl) (Lit_Comma ',')} spids: [4162] ) ] spids: [4162] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:tsts spids:[4166]) op: Equal rhs: (word.EmptyWord) spids: [4166] ) ] spids: [4166] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:ccpr spids:[4168]) op: Equal rhs: { (SQ < '|| for _f in ${tcfn}*; do case $_f in Build.sh|check.pl|check.t|dot.mkshrc|*.1|*.c|*.h|*.ico|*.opt) ;; *) rm -f "$_f" ;; esac; done' > ) } spids: [4168] ) ] spids: [4168] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {(x) (DQ ($ VSub_DollarName '$TARGET_OS'))} {(Lit_Other '=')} {(x) (DQ (Android))} ) terminator: <Op_Semi ';'> ) ] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:check_categories spids:[4197]) op: Equal rhs: {(DQ ($ VSub_DollarName '$check_categories') (' android'))} spids: [4197] ) ] spids: [4197] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:TARGET_OS spids:[4204]) op: Equal rhs: {(Linux)} spids: [4204] ) ] spids: [4204] ) ] spids: [16777215 4194] ) ] spids: [16777215 4207] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {(x) (DQ ($ VSub_DollarName '$TARGET_OS'))} {(Lit_Other '=')} {(x) (DQ (Minix))} ) terminator: <Op_Semi ';'> ) ] action: [ (command.SimpleCommand words: [ {(echo)} { (DQ ('\n') ('WARNING: additional checks before running Build.sh required!\n') ('You can avoid these by calling Build.sh correctly, see below.\n') ) } ] redirects: [(redir.Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})] ) (command.SimpleCommand words: [{(cat)}] redirects: [ (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(conftest.c)}) (redir.HereDoc op: <Redir_DLess '<<'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 4263 stdin_parts: [ ('#include <sys/types.h>\n') ('const char *\n') ('#ifdef _NETBSD_SOURCE\n') ('ct="Ninix3"\n') ('#else\n') ('ct="Minix3"\n') ('#endif\n') (';\n') ] ) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:ct spids:[4265]) op: Equal rhs: {(unknown)} spids: [4265] ) ] spids: [4265] ) (C {(vv)} {(SQ <']'>)} { (DQ (word_part.BracedVarSub token: <VSub_Name CC> suffix_op: (suffix_op.StringUnary op_id:VTest_Hyphen arg_word:{(cc)}) spids: [4276 4280] ) (' -E ') ($ VSub_DollarName '$CFLAGS') (' ') ($ VSub_DollarName '$CPPFLAGS') (' ') ($ VSub_DollarName '$NOWARN') (' conftest.c | grep ct= | tr -d ') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) ('015 >x') ) } ) (C {(sed)} {(SQ <'s/^/[ /'>)} {(x)}) (C {(eval)} { (word_part.CommandSubPart command_list: (command.CommandList children:[(C {(cat)} {(x)})]) left_token: <Left_Backtick '`'> spids: [4305 4309] ) } ) (C {(rmf)} {(x)} {(vv.out)}) (command.Case to_match: {($ VSub_DollarName '$ct')} arms: [ (case_arm pat_list: [{(Minix3)} {(Ninix3)}] action: [ (command.SimpleCommand words: [ {(echo)} { (DQ ('\n') ('Warning: you set TARGET_OS to ') ($ VSub_DollarName '$TARGET_OS') (' but that is ambiguous.\n') ('Please set it to either Minix3 or Ninix3, whereas the latter is\n') ('all versions of Minix with even partial NetBSD(R) userland. The\n') ('value determined from your compiler for the current compilation\n') ('(which may be wrong) is: ') ($ VSub_DollarName '$ct') ('\n') ) } ] redirects: [(redir.Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:TARGET_OS spids:[4351]) op: Equal rhs: {($ VSub_DollarName '$ct')} spids: [4351] ) ] spids: [4351] ) ] spids: [4326 4329 4355 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (command.SimpleCommand words: [ {(echo)} { (DQ ('\n') ('Warning: you set TARGET_OS to ') ($ VSub_DollarName '$TARGET_OS') (' but that is ambiguous.\n') ('Please set it to either Minix3 or Ninix3, whereas the latter is\n') ('all versions of Minix with even partial NetBSD(R) userland. The\n') ("proper value couldn't be determined, continue at your own risk.\n") ) } ] redirects: [(redir.Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})] ) ] spids: [4358 4359 4378 16777215] ) ] spids: [4319 4323 4381] ) ] spids: [16777215 4230] ) ] spids: [16777215 4383] ) (command.Case to_match: {($ VSub_DollarName '$TARGET_OS')} arms: [ (case_arm pat_list: [{(NEXTSTEP)}] action: [ (command.AndOr ops: [Op_DAmp] children: [ (C {(test)} {(x) (DQ ($ VSub_DollarName '$TARGET_OSREV'))} {(Lit_Other '=')} {(x) (DQ )}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:TARGET_OSREV spids:[4414]) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [ (command.Pipeline children: [ (command.SimpleCommand words: [{(hostinfo)}] redirects: [ (redir.Redir op: <Redir_GreatAnd '2>&'> fd: 2 arg_word: {(1)} ) ] ) (C {(grep)} {(SQ <'NeXT Mach [0-9][0-9.]*:'>)}) (C {(sed)} {(SQ <'s/^.*NeXT Mach \\([0-9][0-9.]*\\):.*$/\\1/'>)}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [4415 4440] ) } spids: [4414] ) ] spids: [4414] ) ] ) ] spids: [4395 4396 4443 16777215] ) (case_arm pat_list: [{(QNX)} {(SCO_SV)}] action: [ (command.AndOr ops: [Op_DAmp] children: [ (C {(test)} {(x) (DQ ($ VSub_DollarName '$TARGET_OSREV'))} {(Lit_Other '=')} {(x) (DQ )}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:TARGET_OSREV spids:[4466]) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children:[(C {(uname)} {(-r)})]) left_token: <Left_Backtick '`'> spids: [4467 4471] ) } spids: [4466] ) ] spids: [4466] ) ] ) ] spids: [4445 4448 4474 16777215] ) ] spids: [4389 4393 4476] ) (command.Case to_match: {($ VSub_DollarName '$TARGET_OS')} arms: [ (case_arm pat_list: [{(386BSD)}] action: [ (C {(Lit_Other ':')} { (DQ (word_part.BracedVarSub token: <VSub_Name HAVE_CAN_OTWO> suffix_op: (suffix_op.StringUnary op_id:VTest_Equals arg_word:{(0)}) spids: [4495 4499] ) ) } ) (C {(add_cppflags)} {(-DMKSH_NO_SIGSETJMP)}) (C {(add_cppflags)} {(-DMKSH_TYPEDEF_SIG_ATOMIC_T) (Lit_Other '=') (int)}) (C {(add_cppflags)} {(-DMKSH_CONSERVATIVE_FDS)}) ] spids: [4488 4489 4520 16777215] ) (case_arm pat_list: [{(AIX)}] action: [ (C {(add_cppflags)} {(-D_ALL_SOURCE)}) (C {(Lit_Other ':')} { (DQ (word_part.BracedVarSub token: <VSub_Name HAVE_SETLOCALE_CTYPE> suffix_op: (suffix_op.StringUnary op_id:VTest_Equals arg_word:{(0)}) spids: [4534 4538] ) ) } ) ] spids: [4522 4523 4542 16777215] ) (case_arm pat_list: [{(BeOS)}] action: [ (command.Case to_match: {($ VSub_DollarName '$KSH_VERSION')} arms: [ (case_arm pat_list: [ {(Lit_Other '*') (MIRBSD) (word_part.EscapedLiteralPart token: <Lit_EscapedChar '\\ '> ) (KSH) (Lit_Other '*') } ] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:oswarn spids:[4563]) op: Equal rhs: {(DQ ('; it has minor issues'))} spids: [4563] ) ] spids: [4563] ) ] spids: [4555 4560 4569 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:oswarn spids:[4576]) op: Equal rhs: {(DQ ('; you must recompile mksh with'))} spids: [4576] ) ] spids: [4576] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:oswarn spids:[4582]) op: Equal rhs: { (DQ ($ VSub_DollarName '$oswarn') (${ VSub_Name nl) ('itself in a second stage') ) } spids: [4582] ) ] spids: [4582] ) ] spids: [4572 4573 4592 16777215] ) ] spids: [4548 4552 4595] ) (C {(add_cppflags)} {(-DMKSH_UNEMPLOYED)}) (C {(add_cppflags)} {(-DMKSH_DISABLE_TTY_WARNING)}) (C {(add_cppflags)} {(-DMKSH__NO_SETEUGID)}) ] spids: [4544 4545 4621 16777215] ) (case_arm pat_list: [{(BSD/OS)}] action: [ (C {(Lit_Other ':')} { (DQ (word_part.BracedVarSub token: <VSub_Name HAVE_SETLOCALE_CTYPE> suffix_op: (suffix_op.StringUnary op_id:VTest_Equals arg_word:{(0)}) spids: [4630 4634] ) ) } ) ] spids: [4623 4624 4638 16777215] ) (case_arm pat_list: [{(Coherent)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:oswarn spids:[4644]) op: Equal rhs: {(DQ ('; it has major issues'))} spids: [4644] ) ] spids: [4644] ) (C {(add_cppflags)} {(-DMKSH__NO_SYMLINK)}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:check_categories spids:[4655]) op: Equal rhs: {(DQ ($ VSub_DollarName '$check_categories') (' nosymlink'))} spids: [4655] ) ] spids: [4655] ) (C {(add_cppflags)} {(-DMKSH__NO_SETEUGID)}) (C {(add_cppflags)} {(-DMKSH_CONSERVATIVE_FDS)}) (C {(add_cppflags)} {(-DMKSH_DISABLE_TTY_WARNING)}) ] spids: [4640 4641 4677 16777215] ) (case_arm pat_list: [{(CYGWIN) (Lit_Other '*')}] action: [ (C {(Lit_Other ':')} { (DQ (word_part.BracedVarSub token: <VSub_Name HAVE_SETLOCALE_CTYPE> suffix_op: (suffix_op.StringUnary op_id:VTest_Equals arg_word:{(0)}) spids: [4687 4691] ) ) } ) ] spids: [4679 4681 4695 16777215] ) (case_arm pat_list: [{(Darwin)}] action: [(C {(add_cppflags)} {(-D_DARWIN_C_SOURCE)})] spids: [4697 4698 4706 16777215] ) (case_arm pat_list:[{(DragonFly)}] spids:[4708 4709 4712 16777215]) (case_arm pat_list:[{(FreeBSD)}] spids:[4714 4715 4718 16777215]) (case_arm pat_list: [{(FreeMiNT)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:oswarn spids:[4724]) op: Equal rhs: {(DQ ('; it has minor issues'))} spids: [4724] ) ] spids: [4724] ) (C {(add_cppflags)} {(-D_GNU_SOURCE)}) (C {(add_cppflags)} {(-DMKSH_CONSERVATIVE_FDS)}) (C {(Lit_Other ':')} { (DQ (word_part.BracedVarSub token: <VSub_Name HAVE_SETLOCALE_CTYPE> suffix_op: (suffix_op.StringUnary op_id:VTest_Equals arg_word:{(0)}) spids: [4743 4747] ) ) } ) ] spids: [4720 4721 4751 16777215] ) (case_arm pat_list: [{(GNU)}] action: [ (command.Case to_match: {($ VSub_DollarName '$CC')} arms: [ (case_arm pat_list: [{(Lit_Other '*') (tendracc) (Lit_Other '*')}] spids: [4764 4767 4769 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [(C {(add_cppflags)} {(-D_GNU_SOURCE)})] spids: [4772 4773 4779 16777215] ) ] spids: [4757 4761 4782] ) (C {(add_cppflags)} {(-DSETUID_CAN_FAIL_WITH_EAGAIN)}) (C {(add_cppflags)} {(-DMKSH__NO_PATH_MAX)}) ] spids: [4753 4754 4799 16777215] ) (case_arm pat_list: [{(GNU/kFreeBSD)}] action: [ (command.Case to_match: {($ VSub_DollarName '$CC')} arms: [ (case_arm pat_list: [{(Lit_Other '*') (tendracc) (Lit_Other '*')}] spids: [4812 4815 4817 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [(C {(add_cppflags)} {(-D_GNU_SOURCE)})] spids: [4820 4821 4827 16777215] ) ] spids: [4805 4809 4830] ) (C {(add_cppflags)} {(-DSETUID_CAN_FAIL_WITH_EAGAIN)}) ] spids: [4801 4802 4838 16777215] ) (case_arm pat_list: [{(Haiku)}] action: [ (command.Sentence child: (C {(add_cppflags)} {(-DMKSH_ASSUME_UTF8)}) terminator: <Op_Semi ';'> ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:HAVE_ISSET_MKSH_ASSUME_UTF8 spids:[4849]) op: Equal rhs: {(1)} spids: [4849] ) ] spids: [4849] ) ] spids: [4840 4841 4853 16777215] ) (case_arm pat_list:[{(HP-UX)}] spids:[4855 4856 4859 16777215]) (case_arm pat_list: [{(Interix)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:ccpc spids:[4865]) op: Equal rhs: {(SQ <'-X '>)} spids: [4865] ) ] spids: [4865] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:ccpl spids:[4871]) op: Equal rhs: {(SQ <'-Y '>)} spids: [4871] ) ] spids: [4871] ) (C {(add_cppflags)} {(-D_ALL_SOURCE)}) (C {(Lit_Other ':')} { (DQ (word_part.BracedVarSub token: <VSub_Name LIBS> suffix_op: (suffix_op.StringUnary op_id:VTest_Equals arg_word:{(-lcrypt)}) spids: [4885 4889] ) ) } ) (C {(Lit_Other ':')} { (DQ (word_part.BracedVarSub token: <VSub_Name HAVE_SETLOCALE_CTYPE> suffix_op: (suffix_op.StringUnary op_id:VTest_Equals arg_word:{(0)}) spids: [4896 4900] ) ) } ) ] spids: [4861 4862 4904 16777215] ) (case_arm pat_list: [{(IRIX) (Lit_Other '*')}] action: [ (C {(Lit_Other ':')} { (DQ (word_part.BracedVarSub token: <VSub_Name HAVE_SETLOCALE_CTYPE> suffix_op: (suffix_op.StringUnary op_id:VTest_Equals arg_word:{(0)}) spids: [4914 4918] ) ) } ) ] spids: [4906 4908 4922 16777215] ) (case_arm pat_list: [{(Linux)}] action: [ (command.Case to_match: {($ VSub_DollarName '$CC')} arms: [ (case_arm pat_list: [{(Lit_Other '*') (tendracc) (Lit_Other '*')}] spids: [4935 4938 4940 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [(C {(add_cppflags)} {(-D_GNU_SOURCE)})] spids: [4943 4944 4950 16777215] ) ] spids: [4928 4932 4953] ) (C {(add_cppflags)} {(-DSETUID_CAN_FAIL_WITH_EAGAIN)}) (C {(Lit_Other ':')} { (DQ (word_part.BracedVarSub token: <VSub_Name HAVE_REVOKE> suffix_op: (suffix_op.StringUnary op_id:VTest_Equals arg_word:{(0)}) spids: [4964 4968] ) ) } ) ] spids: [4924 4925 4972 16777215] ) (case_arm pat_list: [{(LynxOS)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:oswarn spids:[4978]) op: Equal rhs: {(DQ ('; it has minor issues'))} spids: [4978] ) ] spids: [4978] ) ] spids: [4974 4975 4984 16777215] ) (case_arm pat_list:[{(MidnightBSD)}] spids:[4986 4987 4990 16777215]) (case_arm pat_list: [{(Minix-vmd)}] action: [ (C {(add_cppflags)} {(-DMKSH__NO_SETEUGID)}) (C {(add_cppflags)} {(-DMKSH_UNEMPLOYED)}) (C {(add_cppflags)} {(-DMKSH_CONSERVATIVE_FDS)}) (C {(add_cppflags)} {(-D_MINIX_SOURCE)}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:oldish_ed spids:[5016]) op: Equal rhs: {(no-stderr-ed)} spids: [5016] ) ] spids: [5016] ) (C {(Lit_Other ':')} { (DQ (word_part.BracedVarSub token: <VSub_Name HAVE_SETLOCALE_CTYPE> suffix_op: (suffix_op.StringUnary op_id:VTest_Equals arg_word:{(0)}) spids: [5026 5030] ) ) } ) ] spids: [4992 4993 5034 16777215] ) (case_arm pat_list: [{(Minix3)}] action: [ (C {(add_cppflags)} {(-DMKSH_UNEMPLOYED)}) (C {(add_cppflags)} {(-DMKSH_CONSERVATIVE_FDS)}) (C {(add_cppflags)} {(-DMKSH_NO_LIMITS)}) (C {(add_cppflags)} {(-D_POSIX_SOURCE)} {(-D_POSIX_1_SOURCE) (Lit_Other '=') (2)} {(-D_MINIX)} ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:oldish_ed spids:[5066]) op: Equal rhs: {(no-stderr-ed)} spids: [5066] ) ] spids: [5066] ) (C {(Lit_Other ':')} { (DQ (word_part.BracedVarSub token: <VSub_Name HAVE_SETLOCALE_CTYPE> suffix_op: (suffix_op.StringUnary op_id:VTest_Equals arg_word:{(0)}) spids: [5076 5080] ) ) } ) ] spids: [5036 5037 5084 16777215] ) (case_arm pat_list:[{(MirBSD)}] spids:[5086 5087 5090 16777215]) (case_arm pat_list: [{(MSYS_) (Lit_Other '*')}] action: [ (command.Sentence child: (C {(add_cppflags)} {(-DMKSH_ASSUME_UTF8) (Lit_Other '=') (0)}) terminator: <Op_Semi ';'> ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:HAVE_ISSET_MKSH_ASSUME_UTF8 spids:[5104]) op: Equal rhs: {(1)} spids: [5104] ) ] spids: [5104] ) (C {(Lit_Other ':')} { (DQ (word_part.BracedVarSub token: <VSub_Name HAVE_SETLOCALE_CTYPE> suffix_op: (suffix_op.StringUnary op_id:VTest_Equals arg_word:{(0)}) spids: [5115 5119] ) ) } ) (C {(Lit_Other ':')} { (DQ (word_part.BracedVarSub token: <VSub_Name HAVE_STDINT_H> suffix_op: (suffix_op.StringUnary op_id:VTest_Equals arg_word:{(0)}) spids: [5130 5134] ) ) } ) ] spids: [5092 5094 5138 16777215] ) (case_arm pat_list:[{(NetBSD)}] spids:[5140 5141 5144 16777215]) (case_arm pat_list: [{(NEXTSTEP)}] action: [ (C {(add_cppflags)} {(-D_NEXT_SOURCE)}) (C {(add_cppflags)} {(-D_POSIX_SOURCE)}) (C {(Lit_Other ':')} { (DQ (word_part.BracedVarSub token: <VSub_Name AWK> suffix_op: (suffix_op.StringUnary op_id:VTest_Equals arg_word:{(gawk)}) spids: [5163 5167] ) ) } ) (C {(Lit_Other ':')} { (DQ (word_part.BracedVarSub token: <VSub_Name CC> suffix_op: (suffix_op.StringUnary op_id:VTest_Equals arg_word:{('cc -posix')}) spids: [5174 5178] ) ) } ) (C {(add_cppflags)} {(-DMKSH_NO_SIGSETJMP)}) (C {(add_cppflags)} {(-DMKSH_UNEMPLOYED)}) (command.Case to_match: {($ VSub_DollarName '$TARGET_OSREV')} arms: [ (case_arm pat_list: [{(4.2) (Lit_Other '*')}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:oswarn spids:[5212]) op: Equal rhs: {(DQ ('; it needs libposix.a'))} spids: [5212] ) ] spids: [5212] ) ] spids: [5203 5205 5218 16777215] ) ] spids: [5196 5200 5221] ) (C {(add_cppflags)} {(-DMKSH_CONSERVATIVE_FDS)}) ] spids: [5146 5147 5229 16777215] ) (case_arm pat_list: [{(Ninix3)}] action: [ (C {(add_cppflags)} {(-DMKSH_UNEMPLOYED)}) (C {(add_cppflags)} {(-DMKSH_CONSERVATIVE_FDS)}) (C {(add_cppflags)} {(-DMKSH_NO_LIMITS)}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:oswarn spids:[5258]) op: Equal rhs: {(DQ ('; it has unknown issues'))} spids: [5258] ) ] spids: [5258] ) ] spids: [5231 5232 5264 16777215] ) (case_arm pat_list: [{(OpenBSD)}] action: [ (C {(Lit_Other ':')} { (DQ (word_part.BracedVarSub token: <VSub_Name HAVE_SETLOCALE_CTYPE> suffix_op: (suffix_op.StringUnary op_id:VTest_Equals arg_word:{(0)}) spids: [5273 5277] ) ) } ) ] spids: [5266 5267 5281 16777215] ) (case_arm pat_list: [{(OS/2)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:HAVE_TERMIOS_H spids:[5287]) op: Equal rhs: {(0)} spids: [5287] ) ] spids: [5287] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:HAVE_MKNOD spids:[5291]) op: Equal rhs: {(0)} spids: [5291] ) ] spids: [5291] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:oswarn spids:[5298]) op: Equal rhs: {(DQ ('; it is currently being ported'))} spids: [5298] ) ] spids: [5298] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:check_categories spids:[5304]) op: Equal rhs: {(DQ ($ VSub_DollarName '$check_categories') (' nosymlink'))} spids: [5304] ) ] spids: [5304] ) (C {(Lit_Other ':')} { (DQ (word_part.BracedVarSub token: <VSub_Name CC> suffix_op: (suffix_op.StringUnary op_id:VTest_Equals arg_word:{(gcc)}) spids: [5314 5318] ) ) } ) (C {(Lit_Other ':')} { (DQ (word_part.BracedVarSub token: <VSub_Name SIZE> suffix_op: (suffix_op.StringUnary op_id:VTest_Equals arg_word:{(': size')}) spids: [5325 5329] ) ) } ) (C {(add_cppflags)} {(-DMKSH_UNEMPLOYED)}) (C {(add_cppflags)} {(-DMKSH_NOPROSPECTOFWORK)}) ] spids: [5283 5284 5343 16777215] ) (case_arm pat_list: [{(OSF1)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:HAVE_SIG_T spids:[5349]) op: Equal rhs: {(0)} spids: [5349] ) ] spids: [5349] ) (C {(add_cppflags)} {(-D_OSF_SOURCE)}) (C {(add_cppflags)} {(-D_POSIX_C_SOURCE) (Lit_Other '=') (200112L)}) (C {(add_cppflags)} {(-D_XOPEN_SOURCE) (Lit_Other '=') (600)}) (C {(add_cppflags)} {(-D_XOPEN_SOURCE_EXTENDED)}) (C {(Lit_Other ':')} { (DQ (word_part.BracedVarSub token: <VSub_Name HAVE_SETLOCALE_CTYPE> suffix_op: (suffix_op.StringUnary op_id:VTest_Equals arg_word:{(0)}) spids: [5383 5387] ) ) } ) ] spids: [5345 5346 5391 16777215] ) (case_arm pat_list: [{(Plan9)}] action: [ (C {(add_cppflags)} {(-D_POSIX_SOURCE)}) (C {(add_cppflags)} {(-D_LIMITS_EXTENSION)}) (C {(add_cppflags)} {(-D_BSD_EXTENSION)}) (C {(add_cppflags)} {(-D_SUSV2_SOURCE)}) (command.Sentence child: (C {(add_cppflags)} {(-DMKSH_ASSUME_UTF8)}) terminator: <Op_Semi ';'> ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:HAVE_ISSET_MKSH_ASSUME_UTF8 spids:[5422]) op: Equal rhs: {(1)} spids: [5422] ) ] spids: [5422] ) (C {(add_cppflags)} {(-DMKSH_NO_CMDLINE_EDITING)}) (C {(add_cppflags)} {(-DMKSH__NO_SETEUGID)}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:oswarn spids:[5436]) op: Equal rhs: {(SQ <' and will currently not work'>)} spids: [5436] ) ] spids: [5436] ) (C {(add_cppflags)} {(-DMKSH_UNEMPLOYED)}) (C {(add_cppflags)} {(-DMKSH_MAYBE_KENCC)}) ] spids: [5393 5394 5456 16777215] ) (case_arm pat_list: [{(PW32) (Lit_Other '*')}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:HAVE_SIG_T spids:[5463]) op: Equal rhs: {(0)} spids: [5463] ) ] spids: [5463] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:oswarn spids:[5470]) op: Equal rhs: {(SQ <' and will currently not work'>)} spids: [5470] ) ] spids: [5470] ) (C {(Lit_Other ':')} { (DQ (word_part.BracedVarSub token: <VSub_Name HAVE_SETLOCALE_CTYPE> suffix_op: (suffix_op.StringUnary op_id:VTest_Equals arg_word:{(0)}) spids: [5479 5483] ) ) } ) ] spids: [5458 5460 5487 16777215] ) (case_arm pat_list: [{(QNX)}] action: [ (C {(add_cppflags)} {(-D__NO_EXT_QNX)}) (C {(add_cppflags)} {(-D__EXT_UNIX_MISC)}) (command.Case to_match: {($ VSub_DollarName '$TARGET_OSREV')} arms: [ (case_arm pat_list: [ {(Lit_Other '[') (012345) (Lit_Other ']') (.) (Lit_Other '*')} {(6.) (Lit_Other '[') (0123) (Lit_Other ']') (.) (Lit_Other '*')} {(6.4.) (Lit_Other '[') (01) (Lit_Other ']')} ] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:oldish_ed spids:[5530]) op: Equal rhs: {(no-stderr-ed)} spids: [5530] ) ] spids: [5530] ) ] spids: [5510 5527 5537 16777215] ) ] spids: [5503 5507 5540] ) (C {(Lit_Other ':')} { (DQ (word_part.BracedVarSub token: <VSub_Name HAVE_SETLOCALE_CTYPE> suffix_op: (suffix_op.StringUnary op_id:VTest_Equals arg_word:{(0)}) spids: [5546 5550] ) ) } ) ] spids: [5489 5490 5554 16777215] ) (case_arm pat_list: [{(SCO_SV)}] action: [ (command.Case to_match: {($ VSub_DollarName '$TARGET_OSREV')} arms: [ (case_arm pat_list: [{(3.2) (Lit_Other '*')}] action: [(C {(add_cppflags)} {(-DMKSH_UNEMPLOYED)})] spids: [5567 5569 5581 16777215] ) (case_arm pat_list: [{(5) (Lit_Other '*')}] spids: [5584 5586 5593 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:oswarn spids:[5600]) op: Equal rhs: {(SQ <'; this is an unknown version of'>)} spids: [5600] ) ] spids: [5600] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:oswarn spids:[5606]) op: Equal rhs: { (DQ ($ VSub_DollarName '$oswarn') ($ VSub_DollarName '$nl') ($ VSub_DollarName '$TARGET_OS') (' ') (${ VSub_Name TARGET_OSREV) (', please tell me what to do') ) } spids: [5606] ) ] spids: [5606] ) ] spids: [5596 5597 5619 16777215] ) ] spids: [5560 5564 5622] ) (C {(add_cppflags)} {(-DMKSH_CONSERVATIVE_FDS)}) (C {(Lit_Other ':')} { (DQ (word_part.BracedVarSub token: <VSub_Name HAVE_SYS_SIGLIST> suffix_op: (suffix_op.StringUnary op_id:VTest_Equals arg_word:{(0)}) spids: [5633 5637] ) (word_part.BracedVarSub token: <VSub_Name HAVE__SYS_SIGLIST> suffix_op: (suffix_op.StringUnary op_id:VTest_Equals arg_word:{(0)}) spids: [5638 5642] ) ) } ) ] spids: [5556 5557 5646 16777215] ) (case_arm pat_list: [{(skyos)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:oswarn spids:[5652]) op: Equal rhs: {(DQ ('; it has minor issues'))} spids: [5652] ) ] spids: [5652] ) ] spids: [5648 5649 5658 16777215] ) (case_arm pat_list: [{(SunOS)}] action: [(C {(add_cppflags)} {(-D_BSD_SOURCE)}) (C {(add_cppflags)} {(-D__EXTENSIONS__)})] spids: [5660 5661 5674 16777215] ) (case_arm pat_list: [{(syllable)}] action: [ (C {(add_cppflags)} {(-D_GNU_SOURCE)}) (C {(add_cppflags)} {(-DMKSH_NO_SIGSUSPEND)}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:oswarn spids:[5690]) op: Equal rhs: {(SQ <' and will currently not work'>)} spids: [5690] ) ] spids: [5690] ) ] spids: [5676 5677 5696 16777215] ) (case_arm pat_list: [{(ULTRIX)}] action: [ (C {(Lit_Other ':')} { (DQ (word_part.BracedVarSub token: <VSub_Name CC> suffix_op: (suffix_op.StringUnary op_id:VTest_Equals arg_word:{('cc -YPOSIX')}) spids: [5705 5709] ) ) } ) (C {(add_cppflags)} {(-DMKSH_TYPEDEF_SSIZE_T) (Lit_Other '=') (int)}) (C {(add_cppflags)} {(-DMKSH_CONSERVATIVE_FDS)}) (C {(Lit_Other ':')} { (DQ (word_part.BracedVarSub token: <VSub_Name HAVE_SETLOCALE_CTYPE> suffix_op: (suffix_op.StringUnary op_id:VTest_Equals arg_word:{(0)}) spids: [5728 5732] ) ) } ) ] spids: [5698 5699 5736 16777215] ) (case_arm pat_list: [{(UnixWare)} {(UNIX_SV)}] action: [ (C {(add_cppflags)} {(-DMKSH_CONSERVATIVE_FDS)}) (C {(Lit_Other ':')} { (DQ (word_part.BracedVarSub token: <VSub_Name HAVE_SYS_SIGLIST> suffix_op: (suffix_op.StringUnary op_id:VTest_Equals arg_word:{(0)}) spids: [5756 5760] ) (word_part.BracedVarSub token: <VSub_Name HAVE__SYS_SIGLIST> suffix_op: (suffix_op.StringUnary op_id:VTest_Equals arg_word:{(0)}) spids: [5761 5765] ) ) } ) ] spids: [5738 5741 5769 16777215] ) (case_arm pat_list: [{(UWIN) (Lit_Other '*')}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:ccpc spids:[5776]) op: Equal rhs: {(SQ <'-Yc,'>)} spids: [5776] ) ] spids: [5776] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:ccpl spids:[5782]) op: Equal rhs: {(SQ <'-Yl,'>)} spids: [5782] ) ] spids: [5782] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:tsts spids:[5788]) op: Equal rhs: {(DQ (' 3<>/dev/tty'))} spids: [5788] ) ] spids: [5788] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:oswarn spids:[5794]) op: Equal rhs: {(DQ ('; it will compile, but the target'))} spids: [5794] ) ] spids: [5794] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:oswarn spids:[5800]) op: Equal rhs: { (DQ ($ VSub_DollarName '$oswarn') (${ VSub_Name nl) ('platform itself is very flakey/unreliable') ) } spids: [5800] ) ] spids: [5800] ) (C {(Lit_Other ':')} { (DQ (word_part.BracedVarSub token: <VSub_Name HAVE_SETLOCALE_CTYPE> suffix_op: (suffix_op.StringUnary op_id:VTest_Equals arg_word:{(0)}) spids: [5813 5817] ) ) } ) ] spids: [5771 5773 5821 16777215] ) (case_arm pat_list: [{(_svr4)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:oswarn spids:[5835]) op: Equal rhs: {(SQ <'; it may or may not work'>)} spids: [5835] ) ] spids: [5835] ) (command.AndOr ops: [Op_DAmp] children: [ (C {(test)} {(x) (DQ ($ VSub_DollarName '$TARGET_OSREV'))} {(Lit_Other '=')} {(x) (DQ )}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:TARGET_OSREV spids:[5856]) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children:[(C {(uname)} {(-r)})]) left_token: <Left_Backtick '`'> spids: [5857 5861] ) } spids: [5856] ) ] spids: [5856] ) ] ) ] spids: [5823 5824 5864 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:oswarn spids:[5870]) op: Equal rhs: {(SQ <'; it may or may not work'>)} spids: [5870] ) ] spids: [5870] ) (command.AndOr ops: [Op_DAmp] children: [ (C {(test)} {(x) (DQ ($ VSub_DollarName '$TARGET_OSREV'))} {(Lit_Other '=')} {(x) (DQ )}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:TARGET_OSREV spids:[5891]) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children:[(C {(uname)} {(-r)})]) left_token: <Left_Backtick '`'> spids: [5892 5896] ) } spids: [5891] ) ] spids: [5891] ) ] ) ] spids: [5866 5867 5899 16777215] ) ] spids: [4482 4486 5901] ) (C {(Lit_Other ':')} { (DQ (word_part.BracedVarSub token: <VSub_Name HAVE_MKNOD> suffix_op: (suffix_op.StringUnary op_id:VTest_Equals arg_word:{(0)}) spids: [5907 5911] ) ) } ) (C {(Lit_Other ':')} { (DQ (word_part.BracedVarSub token: <VSub_Name AWK> suffix_op: (suffix_op.StringUnary op_id:VTest_Equals arg_word:{(awk)}) spids: [5918 5922] ) (word_part.BracedVarSub token: <VSub_Name CC> suffix_op: (suffix_op.StringUnary op_id:VTest_Equals arg_word:{(cc)}) spids: [5923 5927] ) (word_part.BracedVarSub token: <VSub_Name NROFF> suffix_op: (suffix_op.StringUnary op_id:VTest_Equals arg_word:{(nroff)}) spids: [5928 5932] ) (word_part.BracedVarSub token: <VSub_Name SIZE> suffix_op: (suffix_op.StringUnary op_id:VTest_Equals arg_word:{(size)}) spids: [5933 5937] ) ) } ) (command.AndOr ops: [Op_DAmp Op_DAmp Op_DAmp] children: [ (C {(test)} {(0)} {(Lit_Other '=')} {($ VSub_DollarName '$r')}) (command.Pipeline children: [ (C {(echo)}) (command.SimpleCommand words: [{($ VSub_DollarName '$NROFF')} {(-v)}] redirects: [(redir.Redir op:<Redir_GreatAnd '2>&'> fd:2 arg_word:{(1)})] ) (command.SimpleCommand words: [{(grep)} {(GNU)}] redirects: [ (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(/dev/null)}) (redir.Redir op:<Redir_GreatAnd '2>&'> fd:2 arg_word:{(1)}) ] ) ] negated: F ) (command.Pipeline children: [ (C {(echo)}) (command.SimpleCommand words: [{($ VSub_DollarName '$NROFF')} {(-c)}] redirects: [ (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(/dev/null)}) (redir.Redir op:<Redir_GreatAnd '2>&'> fd:2 arg_word:{(1)}) ] ) ] negated: F ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:NROFF spids:[5993]) op: Equal rhs: {(DQ ($ VSub_DollarName '$NROFF') (' -c'))} spids: [5993] ) ] spids: [5993] ) ] ) (C {($ VSub_DollarName '$e')} { (DQ ('Hi from') ($ VSub_DollarName '$ao') (' ') ($ VSub_DollarName '$bi') ($ VSub_DollarName '$srcversion') ($ VSub_DollarName '$ao') (' on:') ) } ) (command.Case to_match: {($ VSub_DollarName '$TARGET_OS')} arms: [ (case_arm pat_list: [{(AIX)}] action: [ (C {(vv)} {(SQ <'|'>)} {(DQ ('oslevel >&2'))}) (C {(vv)} {(SQ <'|'>)} {(DQ ('uname -a >&2'))}) ] spids: [6021 6022 6047 16777215] ) (case_arm pat_list: [{(Darwin)}] action: [ (C {(vv)} {(SQ <'|'>)} {(DQ ('hwprefs machine_type os_type os_class >&2'))}) (C {(vv)} {(SQ <'|'>)} {(DQ ('sw_vers >&2'))}) (C {(vv)} {(SQ <'|'>)} {(DQ ('system_profiler SPSoftwareDataType SPHardwareDataType >&2'))}) (C {(vv)} {(SQ <'|'>)} {(DQ ('/bin/sh --version >&2'))}) (C {(vv)} {(SQ <'|'>)} {(DQ ('xcodebuild -version >&2'))}) (C {(vv)} {(SQ <'|'>)} {(DQ ('uname -a >&2'))}) (C {(vv)} {(SQ <'|'>)} { (DQ ( 'sysctl kern.version hw.machine hw.model hw.memsize hw.availcpu hw.cpufrequency hw.byteorder hw.cpu64bit_capable >&2' ) ) } ) ] spids: [6049 6050 6130 16777215] ) (case_arm pat_list: [{(IRIX) (Lit_Other '*')}] action: [ (C {(vv)} {(SQ <'|'>)} {(DQ ('uname -a >&2'))}) (C {(vv)} {(SQ <'|'>)} {(DQ ('hinv -v >&2'))}) ] spids: [6132 6134 6159 16777215] ) (case_arm pat_list: [{(OSF1)}] action: [ (C {(vv)} {(SQ <'|'>)} {(DQ ('uname -a >&2'))}) (C {(vv)} {(SQ <'|'>)} {(DQ ('/usr/sbin/sizer -v >&2'))}) ] spids: [6161 6162 6187 16777215] ) (case_arm pat_list: [{(SCO_SV)} {(UnixWare)} {(UNIX_SV)}] action: [ (C {(vv)} {(SQ <'|'>)} {(DQ ('uname -a >&2'))}) (C {(vv)} {(SQ <'|'>)} {(DQ ('uname -X >&2'))}) ] spids: [6189 6194 6219 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [(C {(vv)} {(SQ <'|'>)} {(DQ ('uname -a >&2'))})] spids: [6221 6222 6236 16777215] ) ] spids: [6015 6019 6238] ) (command.AndOr ops: [Op_DPipe] children: [ (C {(test)} {(-z)} {(DQ ($ VSub_DollarName '$oswarn'))}) (command.SimpleCommand words: [ {(echo)} { (DQ ('\n') ('Warning: mksh has not yet been ported to or tested on your\n') ("operating system '") ($ VSub_DollarName '$TARGET_OS') ("'") ($ VSub_DollarName '$oswarn') ('. If you can provide\n') ('a shell account to the developer, this may improve; please\n') ('drop us a success or failure notice or even send in diffs.\n') ) } ] redirects: [(redir.Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})] ) ] ) (C {($ VSub_DollarName '$e')} { (DQ ($ VSub_DollarName '$bi') ($ VSub_DollarName '$me') (': Building the MirBSD Korn Shell') ($ VSub_DollarName '$ao') (' ') ($ VSub_DollarName '$ui') ($ VSub_DollarName '$dstversion') ($ VSub_DollarName '$ao') (' on ') ($ VSub_DollarName '$TARGET_OS') (' ') (${ VSub_Name TARGET_OSREV) (...) ) } ) (C {($ VSub_DollarName '$e')} {($ VSub_DollarName '$bi') ($ VSub_DollarName '$me') (Lit_Other ':')} {(Scanning)} {(KW_For for)} {(functions...)} {(please)} {(ignore)} {(any)} {(errors.) ($ VSub_DollarName '$ao')} ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:CPP spids:[6343]) op: Equal rhs: {(DQ ($ VSub_DollarName '$CC') (' -E'))} spids: [6343] ) ] spids: [6343] ) (C {($ VSub_DollarName '$e')} {(...)} {(which)} {(compiler)} {(seems)} {(to)} {(be)} {(used)}) (command.SimpleCommand words: [{(cat)}] redirects: [ (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(conftest.c)}) (redir.HereDoc op: <Redir_DLess '<<'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 6444 stdin_parts: [ ('const char *\n') ('#if defined(__ICC) || defined(__INTEL_COMPILER)\n') ('ct="icc"\n') ('#elif defined(__xlC__) || defined(__IBMC__)\n') ('ct="xlc"\n') ('#elif defined(__SUNPRO_C)\n') ('ct="sunpro"\n') ('#elif defined(__ACK__)\n') ('ct="ack"\n') ('#elif defined(__BORLANDC__)\n') ('ct="bcc"\n') ('#elif defined(__WATCOMC__)\n') ('ct="watcom"\n') ('#elif defined(__MWERKS__)\n') ('ct="metrowerks"\n') ('#elif defined(__HP_cc)\n') ('ct="hpcc"\n') ('#elif defined(__DECC) || (defined(__osf__) && !defined(__GNUC__))\n') ('ct="dec"\n') ('#elif defined(__PGI)\n') ('ct="pgi"\n') ('#elif defined(__DMC__)\n') ('ct="dmc"\n') ('#elif defined(_MSC_VER)\n') ('ct="msc"\n') ('#elif defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__)\n') ('ct="adsp"\n') ('#elif defined(__IAR_SYSTEMS_ICC__)\n') ('ct="iar"\n') ('#elif defined(SDCC)\n') ('ct="sdcc"\n') ('#elif defined(__PCC__)\n') ('ct="pcc"\n') ('#elif defined(__TenDRA__)\n') ('ct="tendra"\n') ('#elif defined(__TINYC__)\n') ('ct="tcc"\n') ('#elif defined(__llvm__) && defined(__clang__)\n') ('ct="clang"\n') ('#elif defined(__NWCC__)\n') ('ct="nwcc"\n') ('#elif defined(__GNUC__)\n') ('ct="gcc"\n') ('#elif defined(_COMPILER_VERSION)\n') ('ct="mipspro"\n') ('#elif defined(__sgi)\n') ('ct="mipspro"\n') ('#elif defined(__hpux) || defined(__hpua)\n') ('ct="hpcc"\n') ('#elif defined(__ultrix)\n') ('ct="ucode"\n') ('#elif defined(__USLC__)\n') ('ct="uslc"\n') ('#elif defined(__LCC__)\n') ('ct="lcc"\n') ('#elif defined(MKSH_MAYBE_KENCC)\n') ('/* and none of the above matches */\n') ('ct="kencc"\n') ('#else\n') ('ct="unknown"\n') ('#endif\n') (';\n') ('const char *\n') ('#if defined(__KLIBC__) && !defined(__OS2__)\n') ('et="klibc"\n') ('#else\n') ('et="unknown"\n') ('#endif\n') (';\n') ] ) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:ct spids:[6445]) op: Equal rhs: {(untested)} spids: [6445] ) ] spids: [6445] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:et spids:[6448]) op: Equal rhs: {(untested)} spids: [6448] ) ] spids: [6448] ) (C {(vv)} {(SQ <']'>)} { (DQ ($ VSub_DollarName '$CPP') (' ') ($ VSub_DollarName '$CFLAGS') (' ') ($ VSub_DollarName '$CPPFLAGS') (' ') ($ VSub_DollarName '$NOWARN') (' conftest.c | ') (" sed -n '/^ *[ce]t *= */s/^ *") (Lit_Other '\\') ('([ce]t') (Lit_Other '\\') (') *= */') (Lit_Other '\\') ("1=/p' | tr -d ") (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) ('015 >x') ) } ) (C {(sed)} {(SQ <'s/^/[ /'>)} {(x)}) (C {(eval)} { (word_part.CommandSubPart command_list: (command.CommandList children:[(C {(cat)} {(x)})]) left_token: <Left_Backtick '`'> spids: [6489 6493] ) } ) (C {(rmf)} {(x)} {(vv.out)}) (command.SimpleCommand words: [{(cat)}] redirects: [ (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(conftest.c)}) (redir.HereDoc op: <Redir_DLess '<<'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 6513 stdin_parts: [('#include <unistd.h>\n') ('int main(void) { return (isatty(0)); }\n')] ) ] ) (command.Case to_match: {($ VSub_DollarName '$ct')} arms: [ (case_arm pat_list: [{(ack)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:CPPFLAGS spids:[6528]) op: Equal rhs: {(DQ ('-Dconst= ') ($ VSub_DollarName '$CPPFLAGS'))} spids: [6528] ) ] spids: [6528] ) ] spids: [6520 6521 6535 16777215] ) (case_arm pat_list: [{(adsp)}] action: [ (command.SimpleCommand words: [ {(echo)} { (SQ <'Warning: Analog Devices C++ compiler for Blackfin, TigerSHARC\n'> <' and SHARC (21000) DSPs detected. This compiler has not yet\n'> <' been tested for compatibility with mksh. Continue at your\n'> <' own risk, please report success/failure to the developers.'> ) } ] redirects: [(redir.Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})] ) ] spids: [6537 6538 6554 16777215] ) (case_arm pat_list: [{(bcc)}] action: [ (command.SimpleCommand words: [ {(echo)} { (DQ ('Warning: Borland C++ Builder detected. This compiler might\n') (' produce broken executables. Continue at your own risk,\n') (' please report success/failure to the developers.') ) } ] redirects: [(redir.Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})] ) ] spids: [6556 6557 6572 16777215] ) (case_arm pat_list: [{(clang)}] action: [ (C {(vv)} {(SQ <'|'>)} { (DQ ($ VSub_DollarName '$CC') (' ') ($ VSub_DollarName '$CFLAGS') (' ') ($ VSub_DollarName '$CPPFLAGS') (' ') ($ VSub_DollarName '$LDFLAGS') (' ') ($ VSub_DollarName '$NOWARN') (' ') ($ VSub_DollarName '$LIBS') (' -version') ) } ) (C {(vv)} {(SQ <'|'>)} { (DQ (word_part.BracedVarSub token: <VSub_Name CLANG> suffix_op: (suffix_op.StringUnary op_id:VTest_Hyphen arg_word:{(clang)}) spids: [6615 6619] ) (' -version') ) } ) (C {(vv)} {(SQ <'|'>)} { (DQ (word_part.BracedVarSub token: <VSub_Name CLANG> suffix_op: (suffix_op.StringUnary op_id:VTest_Hyphen arg_word:{(clang)}) spids: [6631 6635] ) (' --version') ) } ) (command.Case to_match: {($ VSub_DollarName '$CCC_CC') (Lit_Other ':') ($ VSub_DollarName '$CCC_LD')} arms: [ (case_arm pat_list: [{(Lit_Other ':') (Lit_Other '*')}] spids: [6653 6655 6657 16777215] ) (case_arm pat_list: [{(Lit_Other '*') (Lit_Other ':')}] action: [ (command.Sentence child: (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:CCC_LD spids:[6664]) op: Equal rhs: {($ VSub_DollarName '$CCC_CC')} spids: [6664] ) ] spids: [6664] ) terminator: <Op_Semi ';'> ) (C {(export)} {(CCC_LD)}) ] spids: [6660 6662 6672 16777215] ) ] spids: [6644 6650 6675] ) ] spids: [6574 6575 6678 16777215] ) (case_arm pat_list: [{(dec)}] action: [ (C {(vv)} {(SQ <'|'>)} { (DQ ($ VSub_DollarName '$CC') (' ') ($ VSub_DollarName '$CFLAGS') (' ') ($ VSub_DollarName '$CPPFLAGS') (' ') ($ VSub_DollarName '$LDFLAGS') (' ') ($ VSub_DollarName '$NOWARN') (' ') ($ VSub_DollarName '$LIBS') (' -V') ) } ) (C {(vv)} {(SQ <'|'>)} { (DQ ($ VSub_DollarName '$CC') (' ') ($ VSub_DollarName '$CFLAGS') (' ') ($ VSub_DollarName '$CPPFLAGS') (' ') ($ VSub_DollarName '$LDFLAGS') (' ') ($ VSub_DollarName '$NOWARN') (' -Wl,-V conftest.c ') ($ VSub_DollarName '$LIBS') ) } ) ] spids: [6680 6681 6727 16777215] ) (case_arm pat_list: [{(dmc)}] action: [ (command.SimpleCommand words: [{(echo)} {(DQ ('Warning: Digital Mars Compiler detected. When running under'))}] redirects: [(redir.Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})] ) (command.SimpleCommand words: [{(echo)} {(DQ (' UWIN, mksh tends to be unstable due to the limitations'))}] redirects: [(redir.Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})] ) (command.SimpleCommand words: [{(echo)} {(DQ (' of this platform. Continue at your own risk,'))}] redirects: [(redir.Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})] ) (command.SimpleCommand words: [{(echo)} {(DQ (' please report success/failure to the developers.'))}] redirects: [(redir.Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})] ) ] spids: [6729 6730 6773 16777215] ) (case_arm pat_list: [{(gcc)}] action: [ (C {(vv)} {(SQ <'|'>)} { (DQ ($ VSub_DollarName '$CC') (' ') ($ VSub_DollarName '$CFLAGS') (' ') ($ VSub_DollarName '$CPPFLAGS') (' ') ($ VSub_DollarName '$LDFLAGS') (' ') ($ VSub_DollarName '$NOWARN') (' -v conftest.c ') ($ VSub_DollarName '$LIBS') ) } ) (C {(vv)} {(SQ <'|'>)} { (SQ <'echo `$CC $CFLAGS $CPPFLAGS $LDFLAGS $NOWARN $LIBS \\\n'> <'\t -dumpmachine` gcc`$CC $CFLAGS $CPPFLAGS $LDFLAGS $NOWARN \\\n'> <'\t $LIBS -dumpversion`'> ) } ) ] spids: [6775 6776 6813 16777215] ) (case_arm pat_list: [{(hpcc)}] action: [ (C {(vv)} {(SQ <'|'>)} { (DQ ($ VSub_DollarName '$CC') (' ') ($ VSub_DollarName '$CFLAGS') (' ') ($ VSub_DollarName '$CPPFLAGS') (' ') ($ VSub_DollarName '$LDFLAGS') (' ') ($ VSub_DollarName '$NOWARN') (' -V conftest.c ') ($ VSub_DollarName '$LIBS') ) } ) ] spids: [6815 6816 6840 16777215] ) (case_arm pat_list: [{(iar)}] action: [ (command.SimpleCommand words: [ {(echo)} { (SQ <'Warning: IAR Systems (http://www.iar.com) compiler for embedded\n'> <' systems detected. This unsupported compiler has not yet\n'> <' been tested for compatibility with mksh. Continue at your\n'> <' own risk, please report success/failure to the developers.'> ) } ] redirects: [(redir.Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})] ) ] spids: [6842 6843 6859 16777215] ) (case_arm pat_list: [{(icc)}] action: [ (C {(vv)} {(SQ <'|'>)} { (DQ ($ VSub_DollarName '$CC') (' ') ($ VSub_DollarName '$CFLAGS') (' ') ($ VSub_DollarName '$CPPFLAGS') (' ') ($ VSub_DollarName '$LDFLAGS') (' ') ($ VSub_DollarName '$NOWARN') (' ') ($ VSub_DollarName '$LIBS') (' -V') ) } ) ] spids: [6861 6862 6887 16777215] ) (case_arm pat_list: [{(kencc)}] action: [ (C {(vv)} {(SQ <'|'>)} { (DQ ($ VSub_DollarName '$CC') (' ') ($ VSub_DollarName '$CFLAGS') (' ') ($ VSub_DollarName '$CPPFLAGS') (' ') ($ VSub_DollarName '$LDFLAGS') (' ') ($ VSub_DollarName '$NOWARN') (' -v conftest.c ') ($ VSub_DollarName '$LIBS') ) } ) ] spids: [6889 6890 6914 16777215] ) (case_arm pat_list: [{(lcc)}] action: [ (C {(vv)} {(SQ <'|'>)} { (DQ ($ VSub_DollarName '$CC') (' ') ($ VSub_DollarName '$CFLAGS') (' ') ($ VSub_DollarName '$CPPFLAGS') (' ') ($ VSub_DollarName '$LDFLAGS') (' ') ($ VSub_DollarName '$NOWARN') (' -v conftest.c ') ($ VSub_DollarName '$LIBS') ) } ) (C {(add_cppflags)} {(-D__inline__) (Lit_Other '=') (__inline)}) ] spids: [6916 6917 6948 16777215] ) (case_arm pat_list: [{(metrowerks)}] action: [ (command.SimpleCommand words: [ {(echo)} { (SQ <'Warning: Metrowerks C compiler detected. This has not yet\n'> <' been tested for compatibility with mksh. Continue at your\n'> <' own risk, please report success/failure to the developers.'> ) } ] redirects: [(redir.Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})] ) ] spids: [6950 6951 6966 16777215] ) (case_arm pat_list: [{(mipspro)}] action: [ (C {(vv)} {(SQ <'|'>)} { (DQ ($ VSub_DollarName '$CC') (' ') ($ VSub_DollarName '$CFLAGS') (' ') ($ VSub_DollarName '$CPPFLAGS') (' ') ($ VSub_DollarName '$LDFLAGS') (' ') ($ VSub_DollarName '$NOWARN') (' ') ($ VSub_DollarName '$LIBS') (' -version') ) } ) ] spids: [6968 6969 6994 16777215] ) (case_arm pat_list: [{(msc)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:ccpr spids:[7000]) op: Equal rhs: (word.EmptyWord) spids: [7000] ) ] spids: [7000] ) (command.Case to_match: {($ VSub_DollarName '$TARGET_OS')} arms: [ (case_arm pat_list: [{(Interix)}] action: [ (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.DBracket expr: (bool_expr.BoolUnary op_id: BoolUnary_n child: {($ VSub_DollarName '$C89_COMPILER')} ) ) terminator: <Op_Semi ';'> ) ] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:C89_COMPILER spids:[7031]) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [ (C {(ntpath2posix)} {(-c)} {(DQ ($ VSub_DollarName '$C89_COMPILER'))} ) ] ) left_token: <Left_Backtick '`'> spids: [7032 7040] ) } spids: [7031] ) ] spids: [7031] ) ] spids: [16777215 7028] ) ] else_action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:C89_COMPILER spids:[7046]) op: Equal rhs: {(CL.EXE)} spids: [7046] ) ] spids: [7046] ) ] spids: [7043 7050] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.DBracket expr: (bool_expr.BoolUnary op_id: BoolUnary_n child: {($ VSub_DollarName '$C89_LINKER')} ) ) terminator: <Op_Semi ';'> ) ] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:C89_LINKER spids:[7067]) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [ (C {(ntpath2posix)} {(-c)} {(DQ ($ VSub_DollarName '$C89_LINKER'))} ) ] ) left_token: <Left_Backtick '`'> spids: [7068 7076] ) } spids: [7067] ) ] spids: [7067] ) ] spids: [16777215 7064] ) ] else_action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:C89_LINKER spids:[7082]) op: Equal rhs: {(LINK.EXE)} spids: [7082] ) ] spids: [7082] ) ] spids: [7079 7086] ) (C {(vv)} {(SQ <'|'>)} {(DQ ($ VSub_DollarName '$C89_COMPILER') (' /HELP >&2'))}) (C {(vv)} {(SQ <'|'>)} {(DQ ($ VSub_DollarName '$C89_LINKER') (' /LINK >&2'))}) ] spids: [7013 7014 7113 16777215] ) ] spids: [7006 7010 7116] ) ] spids: [6996 6997 7119 16777215] ) (case_arm pat_list: [{(nwcc)}] action: [ (C {(vv)} {(SQ <'|'>)} { (DQ ($ VSub_DollarName '$CC') (' ') ($ VSub_DollarName '$CFLAGS') (' ') ($ VSub_DollarName '$CPPFLAGS') (' ') ($ VSub_DollarName '$LDFLAGS') (' ') ($ VSub_DollarName '$NOWARN') (' ') ($ VSub_DollarName '$LIBS') (' -version') ) } ) ] spids: [7121 7122 7147 16777215] ) (case_arm pat_list: [{(pcc)}] action: [ (C {(vv)} {(SQ <'|'>)} { (DQ ($ VSub_DollarName '$CC') (' ') ($ VSub_DollarName '$CFLAGS') (' ') ($ VSub_DollarName '$CPPFLAGS') (' ') ($ VSub_DollarName '$LDFLAGS') (' ') ($ VSub_DollarName '$NOWARN') (' ') ($ VSub_DollarName '$LIBS') (' -v') ) } ) ] spids: [7149 7150 7175 16777215] ) (case_arm pat_list: [{(pgi)}] action: [ (command.SimpleCommand words: [ {(echo)} { (SQ <'Warning: PGI detected. This unknown compiler has not yet\n'> <' been tested for compatibility with mksh. Continue at your\n'> <' own risk, please report success/failure to the developers.'> ) } ] redirects: [(redir.Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})] ) ] spids: [7177 7178 7193 16777215] ) (case_arm pat_list: [{(sdcc)}] action: [ (command.SimpleCommand words: [ {(echo)} { (SQ <'Warning: sdcc (http://sdcc.sourceforge.net), the small devices\n'> <' C compiler for embedded systems detected. This has not yet\n'> <' been tested for compatibility with mksh. Continue at your\n'> <' own risk, please report success/failure to the developers.'> ) } ] redirects: [(redir.Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})] ) ] spids: [7195 7196 7212 16777215] ) (case_arm pat_list: [{(sunpro)}] action: [ (C {(vv)} {(SQ <'|'>)} { (DQ ($ VSub_DollarName '$CC') (' ') ($ VSub_DollarName '$CFLAGS') (' ') ($ VSub_DollarName '$CPPFLAGS') (' ') ($ VSub_DollarName '$LDFLAGS') (' ') ($ VSub_DollarName '$NOWARN') (' -V conftest.c ') ($ VSub_DollarName '$LIBS') ) } ) ] spids: [7214 7215 7239 16777215] ) (case_arm pat_list: [{(tcc)}] action: [ (C {(vv)} {(SQ <'|'>)} { (DQ ($ VSub_DollarName '$CC') (' ') ($ VSub_DollarName '$CFLAGS') (' ') ($ VSub_DollarName '$CPPFLAGS') (' ') ($ VSub_DollarName '$LDFLAGS') (' ') ($ VSub_DollarName '$NOWARN') (' ') ($ VSub_DollarName '$LIBS') (' -v') ) } ) ] spids: [7241 7242 7267 16777215] ) (case_arm pat_list: [{(tendra)}] action: [ (C {(vv)} {(SQ <'|'>)} { (DQ ($ VSub_DollarName '$CC') (' ') ($ VSub_DollarName '$CFLAGS') (' ') ($ VSub_DollarName '$CPPFLAGS') (' ') ($ VSub_DollarName '$LDFLAGS') (' ') ($ VSub_DollarName '$NOWARN') (' ') ($ VSub_DollarName '$LIBS') (' -V 2>&1 | ') ('\t grep -F -i -e version -e release') ) } ) ] spids: [7269 7270 7297 16777215] ) (case_arm pat_list: [{(ucode)}] action: [ (C {(vv)} {(SQ <'|'>)} { (DQ ($ VSub_DollarName '$CC') (' ') ($ VSub_DollarName '$CFLAGS') (' ') ($ VSub_DollarName '$CPPFLAGS') (' ') ($ VSub_DollarName '$LDFLAGS') (' ') ($ VSub_DollarName '$NOWARN') (' ') ($ VSub_DollarName '$LIBS') (' -V') ) } ) (C {(vv)} {(SQ <'|'>)} { (DQ ($ VSub_DollarName '$CC') (' ') ($ VSub_DollarName '$CFLAGS') (' ') ($ VSub_DollarName '$CPPFLAGS') (' ') ($ VSub_DollarName '$LDFLAGS') (' ') ($ VSub_DollarName '$NOWARN') (' -Wl,-V conftest.c ') ($ VSub_DollarName '$LIBS') ) } ) ] spids: [7299 7300 7346 16777215] ) (case_arm pat_list: [{(uslc)}] action: [ (command.Case to_match: {($ VSub_DollarName '$TARGET_OS') (Lit_Other ':') ($ VSub_DollarName '$TARGET_OSREV')} arms: [ (case_arm pat_list: [{(SCO_SV) (Lit_Other ':') (3.2) (Lit_Other '*')}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:CFLAGS spids:[7372]) op: Equal rhs: {(DQ ($ VSub_DollarName '$CFLAGS') (' -g'))} spids: [7372] ) ] spids: [7372] ) (C {(Lit_Other ':')} { (DQ (word_part.BracedVarSub token: <VSub_Name HAVE_CAN_OTWO> suffix_op: (suffix_op.StringUnary op_id:VTest_Equals arg_word:{(0)}) spids: [7382 7386] ) (word_part.BracedVarSub token: <VSub_Name HAVE_CAN_OPTIMISE> suffix_op: (suffix_op.StringUnary op_id:VTest_Equals arg_word:{(0)}) spids: [7387 7391] ) ) } ) ] spids: [7361 7365 7395 16777215] ) ] spids: [7352 7358 7398] ) (C {(vv)} {(SQ <'|'>)} { (DQ ($ VSub_DollarName '$CC') (' ') ($ VSub_DollarName '$CFLAGS') (' ') ($ VSub_DollarName '$CPPFLAGS') (' ') ($ VSub_DollarName '$LDFLAGS') (' ') ($ VSub_DollarName '$NOWARN') (' -V conftest.c ') ($ VSub_DollarName '$LIBS') ) } ) ] spids: [7348 7349 7422 16777215] ) (case_arm pat_list: [{(watcom)}] action: [ (C {(vv)} {(SQ <'|'>)} { (DQ ($ VSub_DollarName '$CC') (' ') ($ VSub_DollarName '$CFLAGS') (' ') ($ VSub_DollarName '$CPPFLAGS') (' ') ($ VSub_DollarName '$LDFLAGS') (' ') ($ VSub_DollarName '$NOWARN') (' -v conftest.c ') ($ VSub_DollarName '$LIBS') ) } ) ] spids: [7424 7425 7449 16777215] ) (case_arm pat_list: [{(xlc)}] action: [ (C {(vv)} {(SQ <'|'>)} { (DQ ($ VSub_DollarName '$CC') (' ') ($ VSub_DollarName '$CFLAGS') (' ') ($ VSub_DollarName '$CPPFLAGS') (' ') ($ VSub_DollarName '$LDFLAGS') (' ') ($ VSub_DollarName '$NOWARN') (' ') ($ VSub_DollarName '$LIBS') (' -qversion') ) } ) (C {(vv)} {(SQ <'|'>)} { (DQ ($ VSub_DollarName '$CC') (' ') ($ VSub_DollarName '$CFLAGS') (' ') ($ VSub_DollarName '$CPPFLAGS') (' ') ($ VSub_DollarName '$LDFLAGS') (' ') ($ VSub_DollarName '$NOWARN') (' ') ($ VSub_DollarName '$LIBS') (' -qversion=verbose') ) } ) (C {(vv)} {(SQ <'|'>)} {(DQ ('ld -V'))}) ] spids: [7451 7452 7510 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (command.AndOr ops: [Op_DAmp] children: [ (C {(test)} {(x) (DQ ($ VSub_DollarName '$ct'))} {(Lit_Other '=')} {(x) (DQ (untested))}) (C {($ VSub_DollarName '$e')} {(DQ ('!!! detecting preprocessor failed'))}) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:ct spids:[7539]) op: Equal rhs: {(unknown)} spids: [7539] ) ] spids: [7539] ) (C {(vv)} {(DQ ($ VSub_DollarName '$CC') (' --version'))}) (C {(vv)} {(SQ <'|'>)} { (DQ ($ VSub_DollarName '$CC') (' ') ($ VSub_DollarName '$CFLAGS') (' ') ($ VSub_DollarName '$CPPFLAGS') (' ') ($ VSub_DollarName '$LDFLAGS') (' ') ($ VSub_DollarName '$NOWARN') (' -v conftest.c ') ($ VSub_DollarName '$LIBS') ) } ) (C {(vv)} {(SQ <'|'>)} { (DQ ($ VSub_DollarName '$CC') (' ') ($ VSub_DollarName '$CFLAGS') (' ') ($ VSub_DollarName '$CPPFLAGS') (' ') ($ VSub_DollarName '$LDFLAGS') (' ') ($ VSub_DollarName '$NOWARN') (' -V conftest.c ') ($ VSub_DollarName '$LIBS') ) } ) ] spids: [7512 7513 7593 16777215] ) ] spids: [6514 6518 7595] ) (command.Case to_match: {($ VSub_DollarName '$cm')} arms: [ (case_arm pat_list: [{(dragonegg)} {(llvm)}] action: [(C {(vv)} {(SQ <'|'>)} {(DQ ('llc -version'))})] spids: [7603 7606 7620 16777215] ) ] spids: [7597 7601 7622] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:etd spids:[7624]) op: Equal rhs: {(DQ (' on ') ($ VSub_DollarName '$et'))} spids: [7624] ) ] spids: [7624] ) (command.Case to_match: {($ VSub_DollarName '$et')} arms: [ (case_arm pat_list: [{(klibc)}] action: [(C {(add_cppflags)} {(-DMKSH_NO_LIMITS)})] spids: [7636 7637 7645 16777215] ) (case_arm pat_list: [{(unknown)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:etd spids:[7655]) op: Equal rhs: (word.EmptyWord) spids: [7655] ) ] spids: [7655] ) ] spids: [7647 7648 7658 16777215] ) (case_arm pat_list:[{(Lit_Other '*')}] spids:[7660 7661 7668 16777215]) ] spids: [7630 7634 7670] ) (C {($ VSub_DollarName '$e')} { (DQ ($ VSub_DollarName '$bi') ('==> which compiler seems to be used...') ($ VSub_DollarName '$ao') (' ') ($ VSub_DollarName '$ui') ($ VSub_DollarName '$ct') ($ VSub_DollarName '$etd') ($ VSub_DollarName '$ao') ) } ) (C {(rmf)} {(conftest.c)} {(conftest.o)} {(conftest)} {(a.out) (Lit_Other '*')} {(a.exe) (Lit_Other '*')} {(conftest.exe) (Lit_Other '*')} {(vv.out)} ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:save_NOWARN spids:[7714]) op: Equal rhs: {($ VSub_DollarName '$NOWARN')} spids: [7714] ) ] spids: [7714] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:NOWARN spids:[7717]) op: Equal rhs: (word.EmptyWord) spids: [7717] ) ] spids: [7717] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:DOWARN spids:[7719]) op: Equal rhs: (word.EmptyWord) spids: [7719] ) ] spids: [7719] ) (C {(ac_flags)} {(0)} {(compiler_works)} {(SQ )} {(SQ <'if the compiler works'>)}) (command.AndOr ops: [Op_DPipe] children: [ (C {(test)} {(1)} {(Lit_Other '=')} {($ VSub_DollarName '$HAVE_CAN_COMPILER_WORKS')}) (command.ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:HAVE_COMPILER_KNOWN spids:[7748]) op: Equal rhs: {(0)} spids: [7748] ) ] spids: [7748] ) (command.AndOr ops: [Op_DPipe] children: [ (C {(test)} {($ VSub_DollarName '$ct')} {(Lit_Other '=')} {(unknown)}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:HAVE_COMPILER_KNOWN spids:[7761]) op: Equal rhs: {(1)} spids: [7761] ) ] spids: [7761] ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(ac_ifcpp)} {(SQ <'if 0'>)} {(compiler_fails)} {(SQ )} {(SQ <'if the compiler does not fail correctly'>)} ) terminator: <Op_Semi ';'> ) ] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:save_CFLAGS spids:[7787]) op: Equal rhs: {($ VSub_DollarName '$CFLAGS')} spids: [7787] ) ] spids: [7787] ) (C {(Lit_Other ':')} { (DQ (word_part.BracedVarSub token: <VSub_Name HAVE_CAN_DELEXE> suffix_op: (suffix_op.StringUnary op_id:VTest_Equals arg_word:{(x)}) spids: [7794 7798] ) ) } ) (command.Case to_match: {($ VSub_DollarName '$ct')} arms: [ (case_arm pat_list: [{(dec)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:CFLAGS spids:[7813]) op: Equal rhs: { (DQ ($ VSub_DollarName '$CFLAGS') (' ') (${ VSub_Name ccpl) (-non_shared)) } spids: [7813] ) ] spids: [7813] ) (command.SimpleCommand words: [ {(ac_testn)} {(can_delexe)} {(compiler_fails)} {(0)} {(SQ <'for the -non_shared linker option'>)} ] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(EOF)} here_end_span_id: 7842 stdin_parts: [ ('#include <unistd.h>\n') ('int main(void) { return (isatty(0)); }\n') ] ) ] ) ] spids: [7809 7810 7844 16777215] ) (case_arm pat_list: [{(dmc)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:CFLAGS spids:[7851]) op: Equal rhs: { (DQ ($ VSub_DollarName '$CFLAGS') (' ') (${ VSub_Name ccpl) (/DELEXECUTABLE) ) } spids: [7851] ) ] spids: [7851] ) (command.SimpleCommand words: [ {(ac_testn)} {(can_delexe)} {(compiler_fails)} {(0)} {(SQ <'for the /DELEXECUTABLE linker option'>)} ] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(EOF)} here_end_span_id: 7880 stdin_parts: [ ('#include <unistd.h>\n') ('int main(void) { return (isatty(0)); }\n') ] ) ] ) ] spids: [7847 7848 7882 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [(command.ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)})] spids: [7885 7886 7894 16777215] ) ] spids: [7802 7806 7897] ) (command.AndOr ops: [Op_DPipe] children: [ (C {(test)} {(1)} {(Lit_Other '=')} {($ VSub_DollarName '$HAVE_CAN_DELEXE')}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:CFLAGS spids:[7910]) op: Equal rhs: {($ VSub_DollarName '$save_CFLAGS')} spids: [7910] ) ] spids: [7910] ) ] ) (command.SimpleCommand words: [ {(ac_testn)} {(compiler_still_fails)} {(SQ )} {(SQ <'if the compiler still does not fail correctly'>)} ] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(EOF)} here_end_span_id: 7929 ) ] ) (command.AndOr ops: [Op_DAmp] children: [ (C {(test)} {(1)} {(Lit_Other '=')} {($ VSub_DollarName '$HAVE_COMPILER_STILL_FAILS')}) (command.ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] ) ] spids: [16777215 7784] ) ] spids: [16777215 7945] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(ac_ifcpp)} {(SQ <'ifdef __TINYC__'>)} {(couldbe_tcc)} {(SQ <'!'>)} {(compiler_known)} {(0)} {(SQ <'if this could be tcc'>)} ) terminator: <Op_Semi ';'> ) ] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:ct spids:[7975]) op: Equal rhs: {(tcc)} spids: [7975] ) ] spids: [7975] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:CPP spids:[7979]) op: Equal rhs: {(SQ <'cpp -D__TINYC__'>)} spids: [7979] ) ] spids: [7979] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:HAVE_COMPILER_KNOWN spids:[7985]) op: Equal rhs: {(1)} spids: [7985] ) ] spids: [7985] ) ] spids: [16777215 7972] ) ] spids: [16777215 7988] ) (command.Case to_match: {($ VSub_DollarName '$ct')} arms: [ (case_arm pat_list: [{(bcc)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:save_NOWARN spids:[8001]) op: Equal rhs: {(DQ (${ VSub_Name ccpc) (-w))} spids: [8001] ) ] spids: [8001] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:DOWARN spids:[8010]) op: Equal rhs: {(DQ (${ VSub_Name ccpc) ('-w!'))} spids: [8010] ) ] spids: [8010] ) ] spids: [7997 7998 8019 16777215] ) (case_arm pat_list:[{(dec)}] spids:[8021 8022 8029 16777215]) (case_arm pat_list: [{(dmc)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:save_NOWARN spids:[8035]) op: Equal rhs: {(DQ (${ VSub_Name ccpc) (-w))} spids: [8035] ) ] spids: [8035] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:DOWARN spids:[8044]) op: Equal rhs: {(DQ (${ VSub_Name ccpc) (-wx))} spids: [8044] ) ] spids: [8044] ) ] spids: [8031 8032 8053 16777215] ) (case_arm pat_list: [{(hpcc)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:save_NOWARN spids:[8059]) op: Equal rhs: (word.EmptyWord) spids: [8059] ) ] spids: [8059] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:DOWARN spids:[8062]) op: Equal rhs: {(Lit_Other '+') (We)} spids: [8062] ) ] spids: [8062] ) ] spids: [8055 8056 8067 16777215] ) (case_arm pat_list: [{(kencc)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:save_NOWARN spids:[8073]) op: Equal rhs: (word.EmptyWord) spids: [8073] ) ] spids: [8073] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:DOWARN spids:[8076]) op: Equal rhs: (word.EmptyWord) spids: [8076] ) ] spids: [8076] ) ] spids: [8069 8070 8079 16777215] ) (case_arm pat_list: [{(mipspro)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:save_NOWARN spids:[8085]) op: Equal rhs: (word.EmptyWord) spids: [8085] ) ] spids: [8085] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:DOWARN spids:[8088]) op: Equal rhs: {(DQ ('-diag_error 1-10000'))} spids: [8088] ) ] spids: [8088] ) ] spids: [8081 8082 8094 16777215] ) (case_arm pat_list: [{(msc)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:save_NOWARN spids:[8100]) op: Equal rhs: {(DQ (${ VSub_Name ccpc) (/w))} spids: [8100] ) ] spids: [8100] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:DOWARN spids:[8109]) op: Equal rhs: {(DQ (${ VSub_Name ccpc) (/WX))} spids: [8109] ) ] spids: [8109] ) ] spids: [8096 8097 8118 16777215] ) (case_arm pat_list: [{(sunpro)}] action: [ (command.AndOr ops: [Op_DAmp] children: [ (C {(test)} {(x) (DQ ($ VSub_DollarName '$save_NOWARN'))} {(Lit_Other '=')} {(x) (DQ )}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:save_NOWARN spids:[8139]) op: Equal rhs: {(SQ <'-errwarn=%none'>)} spids: [8139] ) ] spids: [8139] ) ] ) (C {(ac_flags)} {(0)} {(errwarnnone)} {(DQ ($ VSub_DollarName '$save_NOWARN'))}) (command.AndOr ops: [Op_DPipe] children: [ (C {(test)} {(1)} {(Lit_Other '=')} {($ VSub_DollarName '$HAVE_CAN_ERRWARNNONE')}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:save_NOWARN spids:[8166]) op: Equal rhs: (word.EmptyWord) spids: [8166] ) ] spids: [8166] ) ] ) (C {(ac_flags)} {(0)} {(errwarnall)} {(DQ ('-errwarn=%all'))}) (command.AndOr ops: [Op_DAmp] children: [ (C {(test)} {(1)} {(Lit_Other '=')} {($ VSub_DollarName '$HAVE_CAN_ERRWARNALL')}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:DOWARN spids:[8190]) op: Equal rhs: {(DQ ('-errwarn=%all'))} spids: [8190] ) ] spids: [8190] ) ] ) ] spids: [8120 8121 8196 16777215] ) (case_arm pat_list: [{(tendra)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:save_NOWARN spids:[8202]) op: Equal rhs: {(-w)} spids: [8202] ) ] spids: [8202] ) ] spids: [8198 8199 8206 16777215] ) (case_arm pat_list: [{(ucode)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:save_NOWARN spids:[8212]) op: Equal rhs: (word.EmptyWord) spids: [8212] ) ] spids: [8212] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:DOWARN spids:[8215]) op: Equal rhs: {(-w2)} spids: [8215] ) ] spids: [8215] ) ] spids: [8208 8209 8219 16777215] ) (case_arm pat_list: [{(watcom)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:save_NOWARN spids:[8225]) op: Equal rhs: (word.EmptyWord) spids: [8225] ) ] spids: [8225] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:DOWARN spids:[8228]) op: Equal rhs: {(-Wc) (Lit_Comma ',') (-we)} spids: [8228] ) ] spids: [8228] ) ] spids: [8221 8222 8234 16777215] ) (case_arm pat_list: [{(xlc)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:save_NOWARN spids:[8240]) op: Equal rhs: {(-qflag) (Lit_Other '=') (i) (Lit_Other ':') (e)} spids: [8240] ) ] spids: [8240] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:DOWARN spids:[8248]) op: Equal rhs: {(-qflag) (Lit_Other '=') (i) (Lit_Other ':') (i)} spids: [8248] ) ] spids: [8248] ) ] spids: [8236 8237 8256 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (command.AndOr ops: [Op_DAmp] children: [ (C {(test)} {(x) (DQ ($ VSub_DollarName '$save_NOWARN'))} {(Lit_Other '=')} {(x) (DQ )}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:save_NOWARN spids:[8277]) op: Equal rhs: {(-Wno-error)} spids: [8277] ) ] spids: [8277] ) ] ) (C {(ac_flags)} {(0)} {(wnoerror)} {(DQ ($ VSub_DollarName '$save_NOWARN'))}) (command.AndOr ops: [Op_DPipe] children: [ (C {(test)} {(1)} {(Lit_Other '=')} {($ VSub_DollarName '$HAVE_CAN_WNOERROR')}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:save_NOWARN spids:[8302]) op: Equal rhs: (word.EmptyWord) spids: [8302] ) ] spids: [8302] ) ] ) (C {(ac_flags)} {(0)} {(werror)} {(-Werror)}) (command.AndOr ops: [Op_DAmp] children: [ (C {(test)} {(1)} {(Lit_Other '=')} {($ VSub_DollarName '$HAVE_CAN_WERROR')}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:DOWARN spids:[8324]) op: Equal rhs: {(-Werror)} spids: [8324] ) ] spids: [8324] ) ] ) (command.AndOr ops: [Op_DAmp] children: [ (C {(test)} {($ VSub_DollarName '$ct')} {(Lit_Other '=')} {(icc)}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:DOWARN spids:[8338]) op: Equal rhs: {(DQ ($ VSub_DollarName '$DOWARN') (' -wd1419'))} spids: [8338] ) ] spids: [8338] ) ] ) ] spids: [8258 8259 8345 16777215] ) ] spids: [7991 7995 8347] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:NOWARN spids:[8349]) op: Equal rhs: {($ VSub_DollarName '$save_NOWARN')} spids: [8349] ) ] spids: [8349] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:i spids:[8362]) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [ (command.Pipeline children: [ (C {(echo)} {(Lit_Other ':') (DQ ($ VSub_DollarName '$orig_CFLAGS'))}) (C {(sed)} {(SQ <'s/^://'>)}) (C {(tr)} {(-c)} {(-d)} {($ VSub_DollarName '$alll') ($ VSub_DollarName '$allu') ($ VSub_DollarName '$alln') } ) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [8363 8390] ) } spids: [8362] ) ] spids: [8362] ) (command.AndOr ops: [Op_DAmp] children: [ (C {(test)} {(x) (DQ ($ VSub_DollarName '$i'))} {(Lit_Other '=')} {(x) (DQ )}) (command.Case to_match: {($ VSub_DollarName '$ct')} arms: [ (case_arm pat_list: [{(hpcc)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:phase spids:[8420]) op: Equal rhs: {(u)} spids: [8420] ) ] spids: [8420] ) (C {(ac_flags)} {(1)} {(otwo)} {(Lit_Other '+') (O2)}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:phase spids:[8434]) op: Equal rhs: {(x)} spids: [8434] ) ] spids: [8434] ) ] spids: [8416 8417 8438 16777215] ) (case_arm pat_list: [{(kencc)} {(tcc)} {(tendra)}] spids: [8440 8445 8452 16777215] ) (case_arm pat_list: [{(sunpro)}] action: [ (command.SimpleCommand words: [{(cat)}] redirects: [ (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(x)}) (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 8473 stdin_parts: [ ('#include <unistd.h>\n') ('int main(void) { return (isatty(0)); }\n') ('#define __IDSTRING_CONCAT(l,p)\t__LINTED__ ## l ## _ ## p\n') ('#define __IDSTRING_EXPAND(l,p)\t__IDSTRING_CONCAT(l,p)\n') ('#define pad\t\t\tvoid __IDSTRING_EXPAND(__LINE__,x)(void) { }\n') ] ) ] ) (command.Pipeline children: [ (C {(yes)} {(pad)}) (command.SimpleCommand words: [{(head)} {(-n)} {(256)}] redirects: [(redir.Redir op:<Redir_DGreat '>>'> fd:16777215 arg_word:{(x)})] ) ] negated: F ) (command.SimpleCommand words: [{(ac_flags)} {(-)} {(1)} {(otwo)} {(-xO2)}] redirects: [(redir.Redir op:<Redir_Less '<'> fd:16777215 arg_word:{(x)})] ) (C {(rmf)} {(x)}) ] spids: [8454 8455 8510 16777215] ) (case_arm pat_list: [{(xlc)}] action: [ (C {(ac_flags)} {(1)} {(othree)} {(DQ ('-O3 -qstrict'))}) (command.AndOr ops: [Op_DPipe] children: [ (C {(test)} {(1)} {(Lit_Other '=')} {($ VSub_DollarName '$HAVE_CAN_OTHREE')}) (C {(ac_flags)} {(1)} {(otwo)} {(-O2)}) ] ) ] spids: [8512 8513 8546 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (C {(ac_flags)} {(1)} {(otwo)} {(-O2)}) (command.AndOr ops: [Op_DPipe] children: [ (C {(test)} {(1)} {(Lit_Other '=')} {($ VSub_DollarName '$HAVE_CAN_OTWO')}) (C {(ac_flags)} {(1)} {(optimise)} {(-O)}) ] ) ] spids: [8548 8549 8580 16777215] ) ] spids: [8410 8414 8582] ) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:i spids:[8587]) op: Equal rhs: {(0)} spids: [8587] ) ] spids: [8587] ) (command.Case to_match: {($ VSub_DollarName '$ct')} arms: [ (case_arm pat_list: [{(bcc)}] action: [ (C {(ac_flags)} {(1)} {(strpool)} {(DQ (${ VSub_Name ccpc) (-d))} {(SQ <'if string pooling can be enabled'>)} ) ] spids: [8596 8597 8618 16777215] ) (case_arm pat_list: [{(clang)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:i spids:[8624]) op: Equal rhs: {(1)} spids: [8624] ) ] spids: [8624] ) ] spids: [8620 8621 8628 16777215] ) (case_arm pat_list: [{(dec)}] action: [ (C {(ac_flags)} {(0)} {(verb)} {(-verbose)}) (C {(ac_flags)} {(1)} {(rodata)} {(-readonly_strings)}) ] spids: [8630 8631 8652 16777215] ) (case_arm pat_list: [{(dmc)}] action: [ (C {(ac_flags)} {(1)} {(decl)} {(DQ (${ VSub_Name ccpc) (-r))} {(SQ <'for strict prototype checks'>)} ) (C {(ac_flags)} {(1)} {(schk)} {(DQ (${ VSub_Name ccpc) (-s))} {(SQ <'for stack overflow checking'>)} ) ] spids: [8654 8655 8694 16777215] ) (case_arm pat_list: [{(gcc)}] action: [ (command.Sentence child: (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:NOWARN spids:[8704]) op: Equal rhs: {($ VSub_DollarName '$DOWARN')} spids: [8704] ) ] spids: [8704] ) terminator: <Op_Semi ';'> ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:phase spids:[8708]) op: Equal rhs: {(u)} spids: [8708] ) ] spids: [8708] ) (C {(ac_flags)} {(1)} {(wnodeprecateddecls)} {(-Wno-deprecated-declarations)}) (C {(ac_flags)} {(1)} {(no_eh_frame)} {(-fno-asynchronous-unwind-tables)}) (C {(ac_flags)} {(1)} {(fnostrictaliasing)} {(-fno-strict-aliasing)}) (C {(ac_flags)} {(1)} {(fstackprotectorstrong)} {(-fstack-protector-strong)}) (command.AndOr ops: [Op_DPipe] children: [ (C {(test)} {(1)} {(Lit_Other '=')} {($ VSub_DollarName '$HAVE_CAN_FSTACKPROTECTORSTRONG')} ) (C {(ac_flags)} {(1)} {(fstackprotectorall)} {(-fstack-protector-all)}) ] ) (command.AndOr ops: [Op_DAmp] children: [ (C {(test)} {($ VSub_DollarName '$cm')} {(Lit_Other '=')} {(dragonegg)}) (command.Case to_match: { (DQ (' ') ($ VSub_DollarName '$CC') (' ') ($ VSub_DollarName '$CFLAGS') (' ') ($ VSub_DollarName '$LDFLAGS') (' ') ) } arms: [ (case_arm pat_list: [ {(Lit_Other '*') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\ '>) (-fplugin) (Lit_Other '=') (Lit_Other '*') (dragonegg) (Lit_Other '*') } ] spids: [8798 8805 8807 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (C {(ac_flags)} {(1)} {(fplugin_dragonegg)} {(-fplugin) (Lit_Other '=') (dragonegg)} ) ] spids: [8810 8811 8823 16777215] ) ] spids: [8783 8795 8826] ) ] ) (command.Case to_match: {($ VSub_DollarName '$cm')} arms: [ (case_arm pat_list: [{(combine)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:fv spids:[8840]) op: Equal rhs: {(0)} spids: [8840] ) ] spids: [8840] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:checks spids:[8844]) op: Equal rhs: {(SQ <'7 8'>)} spids: [8844] ) ] spids: [8844] ) ] spids: [8836 8837 8850 16777215] ) (case_arm pat_list: [{(lto)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:fv spids:[8857]) op: Equal rhs: {(0)} spids: [8857] ) ] spids: [8857] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:checks spids:[8861]) op: Equal rhs: {(SQ <'1 2 3 4 5 6 7 8'>)} spids: [8861] ) ] spids: [8861] ) ] spids: [8853 8854 8867 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:fv spids:[8874]) op: Equal rhs: {(1)} spids: [8874] ) ] spids: [8874] ) ] spids: [8870 8871 8878 16777215] ) ] spids: [8829 8833 8881] ) (command.AndOr ops: [Op_DPipe] children: [ (C {(test)} {($ VSub_DollarName '$fv')} {(Lit_Other '=')} {(1)}) (command.ForEach iter_name: what iter_words: [{($ VSub_DollarName '$checks')}] do_arg_iter: F body: (command.DoGroup children: [ (command.AndOr ops: [Op_DAmp] children: [ (C {(test)} {($ VSub_DollarName '$fv')} {(Lit_Other '=')} {(1)}) (command.ControlFlow token: <ControlFlow_Break break> ) ] ) (command.Case to_match: {($ VSub_DollarName '$what')} arms: [ (case_arm pat_list: [{(1)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:t_cflags spids:[8929]) op: Equal rhs: {(SQ <'-flto=jobserver'>)} spids: [8929] ) ] spids: [8929] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:t_ldflags spids:[8935]) op: Equal rhs: {(SQ <-fuse-linker-plugin>)} spids: [8935] ) ] spids: [8935] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:t_use spids:[8941]) op: Equal rhs: {(1)} spids: [8941] ) (assign_pair lhs: (lhs_expr.LhsName name:t_name spids:[8944]) op: Equal rhs: {(fltojs_lp)} spids: [8944] ) ] spids: [8941] ) ] spids: [8926 8927 8947 16777215] ) (case_arm pat_list: [{(2)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:t_cflags spids:[8953]) op: Equal rhs: {(SQ <'-flto=jobserver'>)} spids: [8953] ) (assign_pair lhs: (lhs_expr.LhsName name:t_ldflags spids:[8958]) op: Equal rhs: {(SQ )} spids: [8958] ) ] spids: [8953] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:t_use spids:[8963]) op: Equal rhs: {(1)} spids: [8963] ) (assign_pair lhs: (lhs_expr.LhsName name:t_name spids:[8966]) op: Equal rhs: {(fltojs_nn)} spids: [8966] ) ] spids: [8963] ) ] spids: [8950 8951 8969 16777215] ) (case_arm pat_list: [{(3)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:t_cflags spids:[8975]) op: Equal rhs: {(SQ <'-flto=jobserver'>)} spids: [8975] ) ] spids: [8975] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:t_ldflags spids:[8981]) op: Equal rhs: {(SQ <'-fno-use-linker-plugin -fwhole-program'>)} spids: [8981] ) ] spids: [8981] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:t_use spids:[8987]) op: Equal rhs: {(1)} spids: [8987] ) (assign_pair lhs: (lhs_expr.LhsName name:t_name spids:[8990]) op: Equal rhs: {(fltojs_np)} spids: [8990] ) ] spids: [8987] ) ] spids: [8972 8973 8993 16777215] ) (case_arm pat_list: [{(4)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:t_cflags spids:[8999]) op: Equal rhs: {(SQ <-flto>)} spids: [8999] ) ] spids: [8999] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:t_ldflags spids:[9005]) op: Equal rhs: {(SQ <-fuse-linker-plugin>)} spids: [9005] ) ] spids: [9005] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:t_use spids:[9011]) op: Equal rhs: {(1)} spids: [9011] ) (assign_pair lhs: (lhs_expr.LhsName name:t_name spids:[9014]) op: Equal rhs: {(fltons_lp)} spids: [9014] ) ] spids: [9011] ) ] spids: [8996 8997 9017 16777215] ) (case_arm pat_list: [{(5)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:t_cflags spids:[9023]) op: Equal rhs: {(SQ <-flto>)} spids: [9023] ) (assign_pair lhs: (lhs_expr.LhsName name:t_ldflags spids:[9028]) op: Equal rhs: {(SQ )} spids: [9028] ) ] spids: [9023] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:t_use spids:[9033]) op: Equal rhs: {(1)} spids: [9033] ) (assign_pair lhs: (lhs_expr.LhsName name:t_name spids:[9036]) op: Equal rhs: {(fltons_nn)} spids: [9036] ) ] spids: [9033] ) ] spids: [9020 9021 9039 16777215] ) (case_arm pat_list: [{(6)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:t_cflags spids:[9045]) op: Equal rhs: {(SQ <-flto>)} spids: [9045] ) ] spids: [9045] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:t_ldflags spids:[9051]) op: Equal rhs: {(SQ <'-fno-use-linker-plugin -fwhole-program'>)} spids: [9051] ) ] spids: [9051] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:t_use spids:[9057]) op: Equal rhs: {(1)} spids: [9057] ) (assign_pair lhs: (lhs_expr.LhsName name:t_name spids:[9060]) op: Equal rhs: {(fltons_np)} spids: [9060] ) ] spids: [9057] ) ] spids: [9042 9043 9063 16777215] ) (case_arm pat_list: [{(7)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:t_cflags spids:[9069]) op: Equal rhs: {(SQ <'-fwhole-program --combine'>)} spids: [9069] ) (assign_pair lhs: (lhs_expr.LhsName name:t_ldflags spids:[9074]) op: Equal rhs: {(SQ )} spids: [9074] ) ] spids: [9069] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:t_use spids:[9079]) op: Equal rhs: {(0)} spids: [9079] ) (assign_pair lhs: (lhs_expr.LhsName name:t_name spids:[9082]) op: Equal rhs: {(combine)} spids: [9082] ) (assign_pair lhs: (lhs_expr.LhsName name:cm spids:[9085]) op: Equal rhs: {(combine)} spids: [9085] ) ] spids: [9079] ) ] spids: [9066 9067 9088 16777215] ) (case_arm pat_list: [{(8)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:fv spids:[9094]) op: Equal rhs: {(1)} spids: [9094] ) (assign_pair lhs: (lhs_expr.LhsName name:cm spids:[9097]) op: Equal rhs: {(normal)} spids: [9097] ) ] spids: [9094] ) ] spids: [9091 9092 9100 16777215] ) ] spids: [8919 8923 9103] ) (command.AndOr ops: [Op_DAmp] children: [ (C {(test)} {($ VSub_DollarName '$fv')} {(Lit_Other '=')} {(1)}) (command.ControlFlow token: <ControlFlow_Break break> ) ] ) (C {(ac_flags)} {($ VSub_DollarName '$t_use')} {($ VSub_DollarName '$t_name')} {(DQ ($ VSub_DollarName '$t_cflags'))} {(DQ ('if gcc supports ') ($ VSub_DollarName '$t_cflags') (' ') ($ VSub_DollarName '$t_ldflags'))} {(DQ ($ VSub_DollarName '$t_ldflags'))} ) ] spids: [8903 9143] ) spids: [8899 8901] ) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:i spids:[9146]) op: Equal rhs: {(1)} spids: [9146] ) ] spids: [9146] ) ] spids: [8696 8697 9150 16777215] ) (case_arm pat_list: [{(hpcc)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:phase spids:[9156]) op: Equal rhs: {(u)} spids: [9156] ) ] spids: [9156] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:phase spids:[9168]) op: Equal rhs: {(x)} spids: [9168] ) ] spids: [9168] ) ] spids: [9152 9153 9172 16777215] ) (case_arm pat_list: [{(icc)}] action: [ (C {(ac_flags)} {(1)} {(fnobuiltinsetmode)} {(-fno-builtin-setmode)}) (C {(ac_flags)} {(1)} {(fnostrictaliasing)} {(-fno-strict-aliasing)}) (C {(ac_flags)} {(1)} {(fstacksecuritycheck)} {(-fstack-security-check)}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:i spids:[9205]) op: Equal rhs: {(1)} spids: [9205] ) ] spids: [9205] ) ] spids: [9174 9175 9209 16777215] ) (case_arm pat_list: [{(mipspro)}] action: [ (C {(ac_flags)} {(1)} {(fullwarn)} {(-fullwarn)} {(SQ <'for remark output support'>)}) ] spids: [9211 9212 9228 16777215] ) (case_arm pat_list: [{(msc)}] action: [ (C {(ac_flags)} {(1)} {(strpool)} {(DQ (${ VSub_Name ccpc) (/GF))} {(SQ <'if string pooling can be enabled'>)} ) (command.SimpleCommand words: [{(echo)} {(SQ <'int main(void) { char test[64] = ""; return (*test); }'>)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(x)})] ) (command.SimpleCommand words: [ {(ac_flags)} {(-)} {(1)} {(stackon)} {(DQ (${ VSub_Name ccpc) (/GZ))} {(SQ <'if stack checks can be enabled'>)} ] redirects: [(redir.Redir op:<Redir_Less '<'> fd:16777215 arg_word:{(x)})] ) (command.SimpleCommand words: [ {(ac_flags)} {(-)} {(1)} {(stckall)} {(DQ (${ VSub_Name ccpc) (/Ge))} {(SQ <'stack checks for all functions'>)} ] redirects: [(redir.Redir op:<Redir_Less '<'> fd:16777215 arg_word:{(x)})] ) (command.SimpleCommand words: [ {(ac_flags)} {(-)} {(1)} {(secuchk)} {(DQ (${ VSub_Name ccpc) (/GS))} {(SQ <'for compiler security checks'>)} ] redirects: [(redir.Redir op:<Redir_Less '<'> fd:16777215 arg_word:{(x)})] ) (C {(rmf)} {(x)}) (C {(ac_flags)} {(1)} {(wall)} {(DQ (${ VSub_Name ccpc) (/Wall))} {(SQ <'to enable all warnings'>)} ) (C {(ac_flags)} {(1)} {(wp64)} {(DQ (${ VSub_Name ccpc) (/Wp64))} {(SQ <'to enable 64-bit warnings'>)} ) ] spids: [9230 9231 9372 16777215] ) (case_arm pat_list: [{(nwcc)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:i spids:[9378]) op: Equal rhs: {(1)} spids: [9378] ) ] spids: [9378] ) ] spids: [9374 9375 9386 16777215] ) (case_arm pat_list: [{(sunpro)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:phase spids:[9392]) op: Equal rhs: {(u)} spids: [9392] ) ] spids: [9392] ) (C {(ac_flags)} {(1)} {(v)} {(-v)}) (C {(ac_flags)} {(1)} {(ipo)} {(-xipo)} {(SQ <'for cross-module optimisation'>)}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:phase spids:[9418]) op: Equal rhs: {(x)} spids: [9418] ) ] spids: [9418] ) ] spids: [9388 9389 9422 16777215] ) (case_arm pat_list: [{(tcc)}] action: [(C {(Lit_Other ':')})] spids: [9424 9425 9434 16777215] ) (case_arm pat_list: [{(tendra)}] action: [ (C {(ac_flags)} {(0)} {(ysystem)} {(-Ysystem)}) (command.AndOr ops: [Op_DAmp] children: [ (C {(test)} {(1)} {(Lit_Other '=')} {($ VSub_DollarName '$HAVE_CAN_YSYSTEM')}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:CPPFLAGS spids:[9459]) op: Equal rhs: {(DQ ('-Ysystem ') ($ VSub_DollarName '$CPPFLAGS'))} spids: [9459] ) ] spids: [9459] ) ] ) (C {(ac_flags)} {(1)} {(extansi)} {(-Xa)}) ] spids: [9436 9437 9475 16777215] ) (case_arm pat_list: [{(xlc)}] action: [ (C {(ac_flags)} {(1)} {(rodata)} {(DQ ('-qro -qroconst -qroptr'))}) (C {(ac_flags)} {(1)} {(rtcheck)} {(-qcheck) (Lit_Other '=') (all)}) (C {(ac_flags)} {(1)} {(wformat)} {(DQ ('-qformat=all -qformat=nozln'))}) ] spids: [9477 9478 9522 16777215] ) ] spids: [8590 8594 9524] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {(1)} {(Lit_Other '=')} {($ VSub_DollarName '$i')}) terminator: <Op_Semi ';'> ) ] action: [ (C {(ac_flags)} {(1)} {(wall)} {(-Wall)}) (C {(ac_flags)} {(1)} {(fwrapv)} {(-fwrapv)}) ] spids: [16777215 9540] ) ] spids: [16777215 9560] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:phase spids:[9563]) op: Equal rhs: {(x)} spids: [9563] ) ] spids: [9563] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:NOWARN spids:[9569]) op: Equal rhs: {($ VSub_DollarName '$DOWARN')} spids: [9569] ) ] spids: [9569] ) (command.AndOr ops: [Op_DAmp] children: [ (C {(test)} {($ VSub_DollarName '$ct')} {(Lit_Other '=')} {(pcc)}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:phase spids:[9582]) op: Equal rhs: {(u)} spids: [9582] ) ] spids: [9582] ) ] ) (command.SimpleCommand words: [{(ac_test)} {(attribute_bounded)} {(SQ )} {(SQ <'for __attribute__((__bounded__))'>)}] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 9630 stdin_parts: [ ('#if defined(__TenDRA__) || (defined(__GNUC__) && (__GNUC__ < 2))\n') ('extern int thiswillneverbedefinedIhope(void);\n') ('/* force a failure: TenDRA and gcc 1.42 have false positive here */\n') ('int main(void) { return (thiswillneverbedefinedIhope()); }\n') ('#else\n') ('#include <string.h>\n') ('#undef __attribute__\n') ('int xcopy(const void *, void *, size_t)\n') (' __attribute__((__bounded__(__buffer__, 1, 3)))\n') (' __attribute__((__bounded__(__buffer__, 2, 3)));\n') ('int main(int ac, char *av[]) { return (xcopy(av[0], av[--ac], 1)); }\n') ('int xcopy(const void *s, void *d, size_t n) {\n') ('/*\n') (' * if memmove does not exist, we are not on a system\n') (' * with GCC with __bounded__ attribute either so poo\n') (' */\n') ('memmove(d, s, n); return ((int)n);\n') ('}\n') ('#endif\n') ] ) ] ) (command.SimpleCommand words: [{(ac_test)} {(attribute_format)} {(SQ )} {(SQ <'for __attribute__((__format__))'>)}] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 9660 stdin_parts: [ ('#if defined(__TenDRA__) || (defined(__GNUC__) && (__GNUC__ < 2))\n') ('extern int thiswillneverbedefinedIhope(void);\n') ('/* force a failure: TenDRA and gcc 1.42 have false positive here */\n') ('int main(void) { return (thiswillneverbedefinedIhope()); }\n') ('#else\n') ('#define fprintf printfoo\n') ('#include <stdio.h>\n') ('#undef __attribute__\n') ('#undef fprintf\n') ('extern int fprintf(FILE *, const char *format, ...)\n') (' __attribute__((__format__(__printf__, 2, 3)));\n') ('int main(int ac, char **av) { return (fprintf(stderr, "%s%d", *av, ac)); }\n') ('#endif\n') ] ) ] ) (command.SimpleCommand words: [{(ac_test)} {(attribute_noreturn)} {(SQ )} {(SQ <'for __attribute__((__noreturn__))'>)}] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 9688 stdin_parts: [ ('#if defined(__TenDRA__) || (defined(__GNUC__) && (__GNUC__ < 2))\n') ('extern int thiswillneverbedefinedIhope(void);\n') ('/* force a failure: TenDRA and gcc 1.42 have false positive here */\n') ('int main(void) { return (thiswillneverbedefinedIhope()); }\n') ('#else\n') ('#include <stdlib.h>\n') ('#undef __attribute__\n') ('void fnord(void) __attribute__((__noreturn__));\n') ('int main(void) { fnord(); }\n') ('void fnord(void) { exit(0); }\n') ('#endif\n') ] ) ] ) (command.SimpleCommand words: [{(ac_test)} {(attribute_pure)} {(SQ )} {(SQ <'for __attribute__((__pure__))'>)}] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 9716 stdin_parts: [ ('#if defined(__TenDRA__) || (defined(__GNUC__) && (__GNUC__ < 2))\n') ('extern int thiswillneverbedefinedIhope(void);\n') ('/* force a failure: TenDRA and gcc 1.42 have false positive here */\n') ('int main(void) { return (thiswillneverbedefinedIhope()); }\n') ('#else\n') ('#include <unistd.h>\n') ('#undef __attribute__\n') ('int foo(const char *) __attribute__((__pure__));\n') ('int main(int ac, char **av) { return (foo(av[ac - 1]) + isatty(0)); }\n') ('int foo(const char *s) { return ((int)s[0]); }\n') ('#endif\n') ] ) ] ) (command.SimpleCommand words: [{(ac_test)} {(attribute_unused)} {(SQ )} {(SQ <'for __attribute__((__unused__))'>)}] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 9743 stdin_parts: [ ('#if defined(__TenDRA__) || (defined(__GNUC__) && (__GNUC__ < 2))\n') ('extern int thiswillneverbedefinedIhope(void);\n') ('/* force a failure: TenDRA and gcc 1.42 have false positive here */\n') ('int main(void) { return (thiswillneverbedefinedIhope()); }\n') ('#else\n') ('#include <unistd.h>\n') ('#undef __attribute__\n') ('int main(int ac __attribute__((__unused__)), char **av\n') (' __attribute__((__unused__))) { return (isatty(0)); }\n') ('#endif\n') ] ) ] ) (command.SimpleCommand words: [{(ac_test)} {(attribute_used)} {(SQ )} {(SQ <'for __attribute__((__used__))'>)}] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 9770 stdin_parts: [ ('#if defined(__TenDRA__) || (defined(__GNUC__) && (__GNUC__ < 2))\n') ('extern int thiswillneverbedefinedIhope(void);\n') ('/* force a failure: TenDRA and gcc 1.42 have false positive here */\n') ('int main(void) { return (thiswillneverbedefinedIhope()); }\n') ('#else\n') ('#include <unistd.h>\n') ('#undef __attribute__\n') ('static const char fnord[] __attribute__((__used__)) = "42";\n') ('int main(void) { return (isatty(0)); }\n') ('#endif\n') ] ) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:NOWARN spids:[9775]) op: Equal rhs: {($ VSub_DollarName '$save_NOWARN')} spids: [9775] ) ] spids: [9775] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:phase spids:[9778]) op: Equal rhs: {(x)} spids: [9778] ) ] spids: [9778] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(ac_ifcpp)} {(SQ <'ifdef MKSH_SMALL'>)} {(isset_MKSH_SMALL)} {(SQ )} {(DQ ('if a reduced-feature mksh is requested'))} ) terminator: <Op_Semi ';'> ) ] action: [ (C {(Lit_Other ':')} { (DQ (word_part.BracedVarSub token: <VSub_Name HAVE_NICE> suffix_op: (suffix_op.StringUnary op_id:VTest_Equals arg_word:{(0)}) spids: [9817 9821] ) ) } ) (C {(Lit_Other ':')} { (DQ (word_part.BracedVarSub token: <VSub_Name HAVE_PERSISTENT_HISTORY> suffix_op: (suffix_op.StringUnary op_id:VTest_Equals arg_word:{(0)}) spids: [9828 9832] ) ) } ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:check_categories spids:[9836]) op: Equal rhs: {(DQ ($ VSub_DollarName '$check_categories') (' smksh'))} spids: [9836] ) ] spids: [9836] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:HAVE_ISSET_MKSH_CONSERVATIVE_FDS spids:[9843]) op: Equal rhs: {(1)} spids: [9843] ) ] spids: [9843] ) ] spids: [16777215 9811] ) ] spids: [16777215 9849] ) (command.AndOr ops: [Op_DAmp] children: [ (C {(ac_ifcpp)} {(SQ <'if defined(MKSH_BINSHPOSIX) || defined(MKSH_BINSHREDUCED)'>)} {(isset_MKSH_BINSH)} {(SQ )} {(SQ <'if invoking as sh should be handled specially'>)} ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:check_categories spids:[9872]) op: Equal rhs: {(DQ ($ VSub_DollarName '$check_categories') (' binsh'))} spids: [9872] ) ] spids: [9872] ) ] ) (command.AndOr ops: [Op_DAmp] children: [ (C {(ac_ifcpp)} {(SQ <'ifdef MKSH_UNEMPLOYED'>)} {(isset_MKSH_UNEMPLOYED)} {(SQ )} {(DQ ('if mksh will be built without job control'))} ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:check_categories spids:[9899]) op: Equal rhs: {(DQ ($ VSub_DollarName '$check_categories') (' arge'))} spids: [9899] ) ] spids: [9899] ) ] ) (command.AndOr ops: [Op_DAmp] children: [ (C {(ac_ifcpp)} {(SQ <'ifdef MKSH_NOPROSPECTOFWORK'>)} {(isset_MKSH_NOPROSPECTOFWORK)} {(SQ )} {(DQ ('if mksh will be built without job signals'))} ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:check_categories spids:[9926]) op: Equal rhs: {(DQ ($ VSub_DollarName '$check_categories') (' arge nojsig'))} spids: [9926] ) ] spids: [9926] ) ] ) (command.AndOr ops: [Op_DAmp] children: [ (C {(ac_ifcpp)} {(SQ <'ifdef MKSH_ASSUME_UTF8'>)} {(isset_MKSH_ASSUME_UTF8)} {(SQ )} {(SQ <'if the default UTF-8 mode is specified'>)} ) (C {(Lit_Other ':')} { (DQ (word_part.BracedVarSub token: <VSub_Name HAVE_SETLOCALE_CTYPE> suffix_op: (suffix_op.StringUnary op_id:VTest_Equals arg_word:{(0)}) spids: [9954 9958] ) ) } ) ] ) (command.AndOr ops: [Op_DAmp] children: [ (C {(ac_ifcpp)} {(SQ <'ifdef MKSH_CONSERVATIVE_FDS'>)} {(isset_MKSH_CONSERVATIVE_FDS)} {(SQ )} {(SQ <'if traditional/conservative fd use is requested'>)} ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:check_categories spids:[9982]) op: Equal rhs: {(DQ ($ VSub_DollarName '$check_categories') (' convfds'))} spids: [9982] ) ] spids: [9982] ) ] ) (command.AndOr ops: [Op_DAmp] children: [ (C {(ac_ifcpp)} {(SQ <'ifdef MKSH_MIDNIGHTBSD01ASH_COMPAT'>)} {(isset_MKSH_MIDNIGHTBSD01ASH_COMPAT)} {(SQ )} {(SQ <'if the MidnightBSD 0.1 ash compatibility mode is requested'>)} ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:check_categories spids:[10027]) op: Equal rhs: {(DQ ($ VSub_DollarName '$check_categories') (' mnbsdash'))} spids: [10027] ) ] spids: [10027] ) ] ) (C {(ac_header)} {(sys/time.h)} {(sys/types.h)}) (C {(ac_header)} {(time.h)} {(sys/types.h)}) (command.AndOr ops: [Op_DPipe] children: [ (C {(test)} {(DQ (11))} {(Lit_Other '=')} {(DQ ($ VSub_DollarName '$HAVE_SYS_TIME_H') ($ VSub_DollarName '$HAVE_TIME_H'))} ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:HAVE_BOTH_TIME_H spids:[10070]) op: Equal rhs: {(0)} spids: [10070] ) ] spids: [10070] ) ] ) (command.SimpleCommand words: [ {(ac_test)} {(both_time_h)} {(SQ )} {(SQ <'whether <sys/time.h> and <time.h> can both be included'>)} ] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 10094 stdin_parts: [ ('#include <sys/types.h>\n') ('#include <sys/time.h>\n') ('#include <time.h>\n') ('#include <unistd.h>\n') ('int main(void) { struct tm tm; return ((int)sizeof(tm) + isatty(0)); }\n') ] ) ] ) (C {(ac_header)} {(sys/bsdtypes.h)}) (C {(ac_header)} {(sys/file.h)} {(sys/types.h)}) (C {(ac_header)} {(sys/mkdev.h)} {(sys/types.h)}) (C {(ac_header)} {(sys/mman.h)} {(sys/types.h)}) (C {(ac_header)} {(sys/param.h)}) (C {(ac_header)} {(sys/resource.h)} {(sys/types.h)} {(_time)}) (C {(ac_header)} {(sys/select.h)} {(sys/types.h)}) (C {(ac_header)} {(sys/sysmacros.h)}) (C {(ac_header)} {(bstring.h)}) (C {(ac_header)} {(grp.h)} {(sys/types.h)}) (C {(ac_header)} {(io.h)}) (C {(ac_header)} {(libgen.h)}) (C {(ac_header)} {(libutil.h)} {(sys/types.h)}) (C {(ac_header)} {(paths.h)}) (C {(ac_header)} {(stdint.h)} {(stdarg.h)}) (C {(ac_header)} {(strings.h)} {(sys/types.h)} {(string.h)}) (C {(ac_header)} {(termios.h)}) (C {(ac_header)} {(ulimit.h)} {(sys/types.h)}) (C {(ac_header)} {(values.h)}) (command.SimpleCommand words: [ {(echo)} { (SQ <'#include <sys/types.h>\n'> <'#include <unistd.h>\n'> <'/* check that off_t can represent 2^63-1 correctly, thx FSF */\n'> <'#define LARGE_OFF_T ((((off_t)1 << 31) << 31) - 1 + (((off_t)1 << 31) << 31))\n'> <'int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 &&\n'> <' LARGE_OFF_T % 2147483647 == 1) ? 1 : -1];\n'> <'int main(void) { return (isatty(0)); }'> ) } ] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(lft.c)})] ) (command.SimpleCommand words: [{(ac_testn)} {(can_lfs)} {(SQ )} {(DQ ('for large file support'))}] redirects: [(redir.Redir op:<Redir_Less '<'> fd:16777215 arg_word:{(lft.c)})] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:save_CPPFLAGS spids:[10237]) op: Equal rhs: {($ VSub_DollarName '$CPPFLAGS')} spids: [10237] ) ] spids: [10237] ) (C {(add_cppflags)} {(-D_FILE_OFFSET_BITS) (Lit_Other '=') (64)}) (command.SimpleCommand words: [ {(ac_testn)} {(can_lfs_sus)} {(SQ <'!'>)} {(can_lfs)} {(0)} {(DQ ('... with -D_FILE_OFFSET_BITS=64'))} ] redirects: [(redir.Redir op:<Redir_Less '<'> fd:16777215 arg_word:{(lft.c)})] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {(0)} {(Lit_Other '=')} {($ VSub_DollarName '$HAVE_CAN_LFS_SUS')}) terminator: <Op_Semi ';'> ) ] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:CPPFLAGS spids:[10279]) op: Equal rhs: {($ VSub_DollarName '$save_CPPFLAGS')} spids: [10279] ) ] spids: [10279] ) (C {(add_cppflags)} {(-D_LARGE_FILES) (Lit_Other '=') (1)}) (command.SimpleCommand words: [ {(ac_testn)} {(can_lfs_aix)} {(SQ <'!'>)} {(can_lfs)} {(0)} {(DQ ('... with -D_LARGE_FILES=1'))} ] redirects: [(redir.Redir op:<Redir_Less '<'> fd:16777215 arg_word:{(lft.c)})] ) (command.AndOr ops: [Op_DPipe] children: [ (C {(test)} {(1)} {(Lit_Other '=')} {($ VSub_DollarName '$HAVE_CAN_LFS_AIX')}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:CPPFLAGS spids:[10320]) op: Equal rhs: {($ VSub_DollarName '$save_CPPFLAGS')} spids: [10320] ) ] spids: [10320] ) ] ) ] spids: [16777215 10276] ) ] spids: [16777215 10323] ) (C {(rm)} {(-f)} {(lft.c)}) (C {(rmf)} {(lft) (Lit_Other '*')}) (command.SimpleCommand words: [ {(ac_test)} {(can_inttypes)} {(SQ <'!'>)} {(stdint_h)} {(1)} {(DQ ('for standard 32-bit integer types'))} ] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 10373 stdin_parts: [ ('#include <sys/types.h>\n') ('#include <stddef.h>\n') ('int main(int ac, char **av) { return ((uint32_t)(size_t)*av + (int32_t)ac); }\n') ] ) ] ) (command.SimpleCommand words: [ {(ac_test)} {(can_ucbints)} {(SQ <'!'>)} {(can_inttypes)} {(1)} {(DQ ('for UCB 32-bit integer types'))} ] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 10398 stdin_parts: [ ('#include <sys/types.h>\n') ('#include <stddef.h>\n') ('int main(int ac, char **av) { return ((u_int32_t)(size_t)*av + (int32_t)ac); }\n') ] ) ] ) (command.SimpleCommand words: [ {(ac_test)} {(can_int8type)} {(SQ <'!'>)} {(stdint_h)} {(1)} {(DQ ('for standard 8-bit integer type'))} ] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 10423 stdin_parts: [ ('#include <sys/types.h>\n') ('#include <stddef.h>\n') ('int main(int ac, char **av) { return ((uint8_t)(size_t)av[ac]); }\n') ] ) ] ) (command.SimpleCommand words: [ {(ac_test)} {(can_ucbint8)} {(SQ <'!'>)} {(can_int8type)} {(1)} {(DQ ('for UCB 8-bit integer type'))} ] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 10448 stdin_parts: [ ('#include <sys/types.h>\n') ('#include <stddef.h>\n') ('int main(int ac, char **av) { return ((u_int8_t)(size_t)av[ac]); }\n') ] ) ] ) (command.SimpleCommand words: [{(ac_test)} {(rlim_t)}] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 10473 stdin_parts: [ ('#include <sys/types.h>\n') ('#if HAVE_BOTH_TIME_H\n') ('#include <sys/time.h>\n') ('#include <time.h>\n') ('#elif HAVE_SYS_TIME_H\n') ('#include <sys/time.h>\n') ('#elif HAVE_TIME_H\n') ('#include <time.h>\n') ('#endif\n') ('#if HAVE_SYS_RESOURCE_H\n') ('#include <sys/resource.h>\n') ('#endif\n') ('#include <unistd.h>\n') ('int main(void) { return (((int)(rlim_t)0) + isatty(0)); }\n') ] ) ] ) (command.SimpleCommand words: [{(ac_testn)} {(sig_t)}] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 10492 stdin_parts: [ ('#include <sys/types.h>\n') ('#include <signal.h>\n') ('#include <stddef.h>\n') ('volatile sig_t foo = (sig_t)0;\n') ('int main(void) { return (foo == (sig_t)0); }\n') ] ) ] ) (command.SimpleCommand words: [{(ac_testn)} {(sighandler_t)} {(SQ <'!'>)} {(sig_t)} {(0)}] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 10516 stdin_parts: [ ('#include <sys/types.h>\n') ('#include <signal.h>\n') ('#include <stddef.h>\n') ('volatile sighandler_t foo = (sighandler_t)0;\n') ('int main(void) { return (foo == (sighandler_t)0); }\n') ] ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {(1)} {(Lit_Other '=')} {($ VSub_DollarName '$HAVE_SIGHANDLER_T')}) terminator: <Op_Semi ';'> ) ] action: [ (C {(add_cppflags)} {(-Dsig_t) (Lit_Other '=') (sighandler_t)}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:HAVE_SIG_T spids:[10538]) op: Equal rhs: {(1)} spids: [10538] ) ] spids: [10538] ) ] spids: [16777215 10528] ) ] spids: [16777215 10541] ) (command.SimpleCommand words: [{(ac_testn)} {(__sighandler_t)} {(SQ <'!'>)} {(sig_t)} {(0)}] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 10566 stdin_parts: [ ('#include <sys/types.h>\n') ('#include <signal.h>\n') ('#include <stddef.h>\n') ('volatile __sighandler_t foo = (__sighandler_t)0;\n') ('int main(void) { return (foo == (__sighandler_t)0); }\n') ] ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {(1)} {(Lit_Other '=')} {($ VSub_DollarName '$HAVE___SIGHANDLER_T')}) terminator: <Op_Semi ';'> ) ] action: [ (C {(add_cppflags)} {(-Dsig_t) (Lit_Other '=') (__sighandler_t)}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:HAVE_SIG_T spids:[10588]) op: Equal rhs: {(1)} spids: [10588] ) ] spids: [10588] ) ] spids: [16777215 10578] ) ] spids: [16777215 10591] ) (command.AndOr ops: [Op_DPipe] children: [ (C {(test)} {(1)} {(Lit_Other '=')} {($ VSub_DollarName '$HAVE_SIG_T')}) (C {(add_cppflags)} {(-Dsig_t) (Lit_Other '=') (nosig_t)}) ] ) (C {(ac_cppflags)} {(SIG_T)}) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {($ VSub_DollarName '$cm')} {(Lit_Other '=')} {(makefile)}) terminator: <Op_Semi ';'> ) ] action: [(C {(Lit_Other ':')} {(nothing)} {(to)} {(check)})] spids: [16777215 10635] ) ] else_action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:HAVE_LINK_WORKS spids:[10649]) op: Equal rhs: {(x)} spids: [10649] ) ] spids: [10649] ) (C {(ac_testinit)} {(link_works)} {(SQ )} {(SQ <'checking if the final link command may succeed'>)} ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:fv spids:[10665]) op: Equal rhs: {(1)} spids: [10665] ) ] spids: [10665] ) (command.SimpleCommand words: [{(cat)}] redirects: [ (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(conftest.c)}) (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(EOF)} here_end_span_id: 10697 stdin_parts: [ ('#define EXTERN\n') ('#define MKSH_INCLUDES_ONLY\n') ('#include ') (Right_DoubleQuote '"') (sh.h) (Right_DoubleQuote '"') ('\n') ('__RCSID(') (Right_DoubleQuote '"') ($ VSub_DollarName '$srcversion') (Right_DoubleQuote '"') (');\n') ('int main(void) { printf(') (Right_DoubleQuote '"') ('Hello, World!') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) (n) (Right_DoubleQuote '"') ('); return (isatty(0)); }\n') ] ) ] ) (command.Case to_match: {($ VSub_DollarName '$cm')} arms: [ (case_arm pat_list: [{(llvm)}] action: [ (command.AndOr ops: [Op_DPipe] children: [ (C {(v)} { (DQ ($ VSub_DollarName '$CC') (' ') ($ VSub_DollarName '$CFLAGS') (' ') ($ VSub_DollarName '$CPPFLAGS') (' ') ($ VSub_DollarName '$NOWARN') (' -emit-llvm -c conftest.c') ) } ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:fv spids:[10725]) op: Equal rhs: {(0)} spids: [10725] ) ] spids: [10725] ) ] ) (C {(rmf)} {($ VSub_DollarName '$tfn') (.s)}) (command.AndOr ops: [Op_DPipe Op_DPipe] children: [ (C {(test)} {($ VSub_DollarName '$fv')} {(Lit_Other '=')} {(0)}) (C {(v)} { (DQ ('llvm-link -o - conftest.o | opt ') ($ VSub_DollarName '$optflags') (' | llc -o ') ($ VSub_DollarName '$tfn') (.s) ) } ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:fv spids:[10757]) op: Equal rhs: {(0)} spids: [10757] ) ] spids: [10757] ) ] ) (command.AndOr ops: [Op_DPipe] children: [ (C {(test)} {($ VSub_DollarName '$fv')} {(Lit_Other '=')} {(0)}) (C {(v)} { (DQ ($ VSub_DollarName '$CC') (' ') ($ VSub_DollarName '$CFLAGS') (' ') ($ VSub_DollarName '$LDFLAGS') (' -o ') ($ VSub_DollarName '$tcfn') (' ') ($ VSub_DollarName '$tfn') ('.s ') ($ VSub_DollarName '$LIBS') (' ') ($ VSub_DollarName '$ccpr') ) } ) ] ) ] spids: [10706 10707 10790 16777215] ) (case_arm pat_list: [{(dragonegg)}] action: [ (command.AndOr ops: [Op_DPipe] children: [ (C {(v)} { (DQ ($ VSub_DollarName '$CC') (' ') ($ VSub_DollarName '$CFLAGS') (' ') ($ VSub_DollarName '$CPPFLAGS') (' ') ($ VSub_DollarName '$NOWARN') (' -S -flto conftest.c') ) } ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:fv spids:[10812]) op: Equal rhs: {(0)} spids: [10812] ) ] spids: [10812] ) ] ) (command.AndOr ops: [Op_DPipe] children: [ (C {(test)} {($ VSub_DollarName '$fv')} {(Lit_Other '=')} {(0)}) (C {(v)} {(DQ ('mv conftest.s conftest.ll'))}) ] ) (command.AndOr ops: [Op_DPipe Op_DPipe] children: [ (C {(test)} {($ VSub_DollarName '$fv')} {(Lit_Other '=')} {(0)}) (C {(v)} {(DQ ('llvm-as conftest.ll'))}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:fv spids:[10851]) op: Equal rhs: {(0)} spids: [10851] ) ] spids: [10851] ) ] ) (C {(rmf)} {($ VSub_DollarName '$tfn') (.s)}) (command.AndOr ops: [Op_DPipe Op_DPipe] children: [ (C {(test)} {($ VSub_DollarName '$fv')} {(Lit_Other '=')} {(0)}) (C {(v)} { (DQ ('llvm-link -o - conftest.bc | opt ') ($ VSub_DollarName '$optflags') (' | llc -o ') ($ VSub_DollarName '$tfn') (.s) ) } ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:fv spids:[10883]) op: Equal rhs: {(0)} spids: [10883] ) ] spids: [10883] ) ] ) (command.AndOr ops: [Op_DPipe] children: [ (C {(test)} {($ VSub_DollarName '$fv')} {(Lit_Other '=')} {(0)}) (C {(v)} { (DQ ($ VSub_DollarName '$CC') (' ') ($ VSub_DollarName '$CFLAGS') (' ') ($ VSub_DollarName '$LDFLAGS') (' -o ') ($ VSub_DollarName '$tcfn') (' ') ($ VSub_DollarName '$tfn') ('.s ') ($ VSub_DollarName '$LIBS') (' ') ($ VSub_DollarName '$ccpr') ) } ) ] ) ] spids: [10793 10794 10916 16777215] ) (case_arm pat_list: [{(combine)}] action: [ (C {(v)} { (DQ ($ VSub_DollarName '$CC') (' ') ($ VSub_DollarName '$CFLAGS') (' ') ($ VSub_DollarName '$CPPFLAGS') (' ') ($ VSub_DollarName '$LDFLAGS') (' -fwhole-program --combine ') ($ VSub_DollarName '$NOWARN') (' -o ') ($ VSub_DollarName '$tcfn') (' conftest.c ') ($ VSub_DollarName '$LIBS') (' ') ($ VSub_DollarName '$ccpr') ) } ) ] spids: [10919 10920 10944 16777215] ) (case_arm pat_list: [{(lto)} {(normal)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:cm spids:[10953]) op: Equal rhs: {(normal)} spids: [10953] ) ] spids: [10953] ) (command.AndOr ops: [Op_DPipe] children: [ (C {(v)} { (DQ ($ VSub_DollarName '$CC') (' ') ($ VSub_DollarName '$CFLAGS') (' ') ($ VSub_DollarName '$CPPFLAGS') (' ') ($ VSub_DollarName '$NOWARN') (' -c conftest.c') ) } ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:fv spids:[10972]) op: Equal rhs: {(0)} spids: [10972] ) ] spids: [10972] ) ] ) (command.AndOr ops: [Op_DPipe] children: [ (C {(test)} {($ VSub_DollarName '$fv')} {(Lit_Other '=')} {(0)}) (C {(v)} { (DQ ($ VSub_DollarName '$CC') (' ') ($ VSub_DollarName '$CFLAGS') (' ') ($ VSub_DollarName '$LDFLAGS') (' -o ') ($ VSub_DollarName '$tcfn') (' conftest.o ') ($ VSub_DollarName '$LIBS') (' ') ($ VSub_DollarName '$ccpr') ) } ) ] ) ] spids: [10947 10950 11003 16777215] ) ] spids: [10699 10703 11006] ) (command.AndOr ops: [Op_DPipe] children: [ (C {(test)} {(-f)} {($ VSub_DollarName '$tcfn')}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:fv spids:[11017]) op: Equal rhs: {(0)} spids: [11017] ) ] spids: [11017] ) ] ) (C {(ac_testdone)}) (command.AndOr ops: [Op_DPipe] children: [ (C {(test)} {($ VSub_DollarName '$fv')} {(Lit_Other '=')} {(1)}) (command.ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] ) ] spids: [10646 11038] ) (command.AndOr ops: [Op_DAmp] children: [ (C {(test)} {(x) (DQ (NetBSD))} {(Lit_Other '=')} {(x) (DQ ($ VSub_DollarName '$TARGET_OS'))}) (C {($ VSub_DollarName '$e')} {(Ignore)} {(the)} {(compatibility)} {(warning.)}) ] ) (command.SimpleCommand words: [{(ac_testn)} {(sys_errlist)} {(SQ )} {(DQ ('the sys_errlist[] array and sys_nerr'))}] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 11097 stdin_parts: [ ('extern const int sys_nerr;\n') ('extern const char * const sys_errlist[];\n') ('extern int isatty(int);\n') ('int main(void) { return (*sys_errlist[sys_nerr - 1] + isatty(0)); }\n') ] ) ] ) (command.SimpleCommand words: [ {(ac_testn)} {(_sys_errlist)} {(SQ <'!'>)} {(sys_errlist)} {(0)} {(DQ ('the _sys_errlist[] array and _sys_nerr'))} ] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 11123 stdin_parts: [ ('extern const int _sys_nerr;\n') ('extern const char * const _sys_errlist[];\n') ('extern int isatty(int);\n') ('int main(void) { return (*_sys_errlist[_sys_nerr - 1] + isatty(0)); }\n') ] ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {(1)} {(Lit_Other '=')} {(DQ ($ VSub_DollarName '$HAVE__SYS_ERRLIST'))}) terminator: <Op_Semi ';'> ) ] action: [ (C {(add_cppflags)} {(-Dsys_nerr) (Lit_Other '=') (_sys_nerr)}) (C {(add_cppflags)} {(-Dsys_errlist) (Lit_Other '=') (_sys_errlist)}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:HAVE_SYS_ERRLIST spids:[11154]) op: Equal rhs: {(1)} spids: [11154] ) ] spids: [11154] ) ] spids: [16777215 11137] ) ] spids: [16777215 11157] ) (C {(ac_cppflags)} {(SYS_ERRLIST)}) (command.ForEach iter_name: what iter_words: [{(name)} {(list)}] do_arg_iter: F body: (command.DoGroup children: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:uwhat spids:[11178]) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [(C {(upper)} {($ VSub_DollarName '$what')})] ) left_token: <Left_Backtick '`'> spids: [11179 11183] ) } spids: [11178] ) ] spids: [11178] ) (command.SimpleCommand words: [ {(ac_testn)} {(sys_sig) ($ VSub_DollarName '$what')} {(SQ )} {(DQ ('the sys_sig') (${ VSub_Name what) ('[] array'))} ] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(EOF)} here_end_span_id: 11217 stdin_parts: [ ('extern const char * const sys_sig') (${ VSub_Name what) ('[];\n') ('extern int isatty(int);\n') ('int main(void) { return (sys_sig') (${ VSub_Name what) ('[0][0] + isatty(0)); }\n') ] ) ] ) (command.SimpleCommand words: [ {(ac_testn)} {(_sys_sig) ($ VSub_DollarName '$what')} {(SQ <'!'>)} {(sys_sig) ($ VSub_DollarName '$what')} {(0)} {(DQ ('the _sys_sig') (${ VSub_Name what) ('[] array'))} ] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(EOF)} here_end_span_id: 11256 stdin_parts: [ ('extern const char * const _sys_sig') (${ VSub_Name what) ('[];\n') ('extern int isatty(int);\n') ('int main(void) { return (_sys_sig') (${ VSub_Name what) ('[0][0] + isatty(0)); }\n') ] ) ] ) (C {(eval)} {(Lit_VarLike 'uwhat_v=') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (HAVE__SYS_SIG) ($ VSub_DollarName '$uwhat') } ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {(1)} {(Lit_Other '=')} {(DQ ($ VSub_DollarName '$uwhat_v'))}) terminator: <Op_Semi ';'> ) ] action: [ (C {(add_cppflags)} {(-Dsys_sig) ($ VSub_DollarName '$what') (Lit_Other '=') (_sys_sig) ($ VSub_DollarName '$what') } ) (C {(eval)} {(HAVE_SYS_SIG) ($ VSub_DollarName '$uwhat') (Lit_Other '=') (1)}) ] spids: [16777215 11279] ) ] spids: [16777215 11299] ) (C {(ac_cppflags)} {(SYS_SIG) ($ VSub_DollarName '$uwhat')}) ] spids: [11175 11307] ) spids: [11169 11173] ) (command.SimpleCommand words: [{(ac_test)} {(flock)}] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 11335 stdin_parts: [ ('#include <sys/types.h>\n') ('#include <fcntl.h>\n') ('#undef flock\n') ('#if HAVE_SYS_FILE_H\n') ('#include <sys/file.h>\n') ('#endif\n') ('int main(void) { return (flock(0, LOCK_EX | LOCK_UN)); }\n') ] ) ] ) (command.SimpleCommand words: [ {(ac_test)} {(lock_fcntl)} {(SQ <'!'>)} {(flock)} {(1)} {(SQ <'whether we can lock files with fcntl'>)} ] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 11365 stdin_parts: [ ('#include <fcntl.h>\n') ('#undef flock\n') ('int main(void) {\n') ('struct flock lks;\n') ('lks.l_type = F_WRLCK | F_UNLCK;\n') ('return (fcntl(0, F_SETLKW, &lks));\n') ('}\n') ] ) ] ) (command.SimpleCommand words: [{(ac_test)} {(getrusage)}] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 11383 stdin_parts: [ ('#define MKSH_INCLUDES_ONLY\n') ('#include "sh.h"\n') ('int main(void) {\n') ('struct rusage ru;\n') ('return (getrusage(RUSAGE_SELF, &ru) +\n') (' getrusage(RUSAGE_CHILDREN, &ru));\n') ('}\n') ] ) ] ) (command.SimpleCommand words: [{(ac_test)} {(getsid)}] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 11396 stdin_parts: [('#include <unistd.h>\n') ('int main(void) { return ((int)getsid(0)); }\n')] ) ] ) (command.SimpleCommand words: [{(ac_test)} {(gettimeofday)}] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 11410 stdin_parts: [ ('#define MKSH_INCLUDES_ONLY\n') ('#include "sh.h"\n') ('int main(void) { struct timeval tv; return (gettimeofday(&tv, NULL)); }\n') ] ) ] ) (command.SimpleCommand words: [{(ac_test)} {(killpg)}] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 11423 stdin_parts: [ ('#include <signal.h>\n') ('int main(int ac, char *av[]) { return (av[0][killpg(123, ac)]); }\n') ] ) ] ) (command.SimpleCommand words: [{(ac_test)} {(memmove)}] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 11443 stdin_parts: [ ('#include <sys/types.h>\n') ('#include <stddef.h>\n') ('#include <string.h>\n') ('#if HAVE_STRINGS_H\n') ('#include <strings.h>\n') ('#endif\n') ('int main(int ac, char *av[]) {\n') ('return (*(int *)(void *)memmove(av[0], av[1], (size_t)ac));\n') ('}\n') ] ) ] ) (command.SimpleCommand words: [{(ac_test)} {(mknod)} {(SQ )} {(SQ <'if to use mknod(), makedev() and friends'>)}] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 11469 stdin_parts: [ ('#define MKSH_INCLUDES_ONLY\n') ('#include "sh.h"\n') ('int main(int ac, char *av[]) {\n') ('dev_t dv;\n') ('dv = makedev((unsigned int)ac, (unsigned int)av[0][0]);\n') ('return (mknod(av[0], (mode_t)0, dv) ? (int)major(dv) :\n') (' (int)minor(dv));\n') ('}\n') ] ) ] ) (command.SimpleCommand words: [{(ac_test)} {(mmap)} {(lock_fcntl)} {(0)} {(SQ <'for mmap and munmap'>)}] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 11500 stdin_parts: [ ('#include <sys/types.h>\n') ('#if HAVE_SYS_FILE_H\n') ('#include <sys/file.h>\n') ('#endif\n') ('#if HAVE_SYS_MMAN_H\n') ('#include <sys/mman.h>\n') ('#endif\n') ('#include <stddef.h>\n') ('#include <stdlib.h>\n') ('int main(void) { return ((void *)mmap(NULL, (size_t)0,\n') (' PROT_READ, MAP_PRIVATE, 0, (off_t)0) == (void *)NULL ? 1 :\n') (' munmap(NULL, 0)); }\n') ] ) ] ) (command.SimpleCommand words: [{(ac_test)} {(nice)}] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 11513 stdin_parts: [('#include <unistd.h>\n') ('int main(void) { return (nice(4)); }\n')] ) ] ) (command.SimpleCommand words: [{(ac_test)} {(revoke)}] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 11530 stdin_parts: [ ('#include <sys/types.h>\n') ('#if HAVE_LIBUTIL_H\n') ('#include <libutil.h>\n') ('#endif\n') ('#include <unistd.h>\n') ('int main(int ac, char *av[]) { return (ac + revoke(av[0])); }\n') ] ) ] ) (command.SimpleCommand words: [{(ac_test)} {(setlocale_ctype)} {(SQ )} {(SQ <'setlocale(LC_CTYPE, "")'>)}] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 11551 stdin_parts: [ ('#include <locale.h>\n') ('#include <stddef.h>\n') ('int main(void) { return ((int)(size_t)(void *)setlocale(LC_CTYPE, "")); }\n') ] ) ] ) (command.SimpleCommand words: [{(ac_test)} {(langinfo_codeset)} {(setlocale_ctype)} {(0)} {(SQ <'nl_langinfo(CODESET)'>)}] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 11573 stdin_parts: [ ('#include <langinfo.h>\n') ('#include <stddef.h>\n') ('int main(void) { return ((int)(size_t)(void *)nl_langinfo(CODESET)); }\n') ] ) ] ) (command.SimpleCommand words: [{(ac_test)} {(select)}] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 11614 stdin_parts: [ ('#include <sys/types.h>\n') ('#if HAVE_BOTH_TIME_H\n') ('#include <sys/time.h>\n') ('#include <time.h>\n') ('#elif HAVE_SYS_TIME_H\n') ('#include <sys/time.h>\n') ('#elif HAVE_TIME_H\n') ('#include <time.h>\n') ('#endif\n') ('#if HAVE_SYS_BSDTYPES_H\n') ('#include <sys/bsdtypes.h>\n') ('#endif\n') ('#if HAVE_SYS_SELECT_H\n') ('#include <sys/select.h>\n') ('#endif\n') ('#if HAVE_BSTRING_H\n') ('#include <bstring.h>\n') ('#endif\n') ('#include <stddef.h>\n') ('#include <stdlib.h>\n') ('#include <string.h>\n') ('#if HAVE_STRINGS_H\n') ('#include <strings.h>\n') ('#endif\n') ('#include <unistd.h>\n') ('int main(void) {\n') ('struct timeval tv = { 1, 200000 };\n') ('fd_set fds; FD_ZERO(&fds); FD_SET(0, &fds);\n') ('return (select(FD_SETSIZE, &fds, NULL, NULL, &tv));\n') ('}\n') ] ) ] ) (command.SimpleCommand words: [{(ac_test)} {(setresugid)}] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 11628 stdin_parts: [ ('#include <sys/types.h>\n') ('#include <unistd.h>\n') ('int main(void) { return (setresuid(0,0,0) + setresgid(0,0,0)); }\n') ] ) ] ) (command.SimpleCommand words: [{(ac_test)} {(setgroups)} {(setresugid)} {(0)}] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 11649 stdin_parts: [ ('#include <sys/types.h>\n') ('#if HAVE_GRP_H\n') ('#include <grp.h>\n') ('#endif\n') ('#include <unistd.h>\n') ('int main(void) { gid_t gid = 0; return (setgroups(0, &gid)); }\n') ] ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {(x) (DQ ($ VSub_DollarName '$et'))} {(Lit_Other '=')} {(x) (DQ (klibc))}) terminator: <Op_Semi ';'> ) ] action: [ (command.SimpleCommand words: [{(ac_testn)} {(__rt_sigsuspend)} {(SQ )} {(SQ <'whether klibc uses RT signals'>)}] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 11692 stdin_parts: [ ('#define MKSH_INCLUDES_ONLY\n') ('#include "sh.h"\n') ('extern int __rt_sigsuspend(const sigset_t *, size_t);\n') ('int main(void) { return (__rt_sigsuspend(NULL, 0)); }\n') ] ) ] ) (command.SimpleCommand words: [ {(ac_testn)} {(__sigsuspend_s)} {(SQ <'!'>)} {(__rt_sigsuspend)} {(1)} {(SQ <'whether sigsuspend is usable (1/2)'>)} ] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 11727 stdin_parts: [ ('#define MKSH_INCLUDES_ONLY\n') ('#include "sh.h"\n') ('extern int __sigsuspend_s(sigset_t);\n') ('int main(void) { return (__sigsuspend_s(0)); }\n') ] ) ] ) (command.SimpleCommand words: [ {(ac_testn)} {(__sigsuspend_xxs)} {(SQ <'!'>)} {(__sigsuspend_s)} {(1)} {(SQ <'whether sigsuspend is usable (2/2)'>)} ] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 11756 stdin_parts: [ ('#define MKSH_INCLUDES_ONLY\n') ('#include "sh.h"\n') ('extern int __sigsuspend_xxs(int, int, sigset_t);\n') ('int main(void) { return (__sigsuspend_xxs(0, 0, 0)); }\n') ] ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {(DQ (000))} {(Lit_Other '=')} { (DQ ($ VSub_DollarName '$HAVE___RT_SIGSUSPEND') ($ VSub_DollarName '$HAVE___SIGSUSPEND_S') ($ VSub_DollarName '$HAVE___SIGSUSPEND_XXS') ) } ) terminator: <Op_Semi ';'> ) ] action: [(C {(add_cppflags)} {(-DMKSH_NO_SIGSUSPEND)})] spids: [16777215 11776] ) ] spids: [16777215 11788] ) ] spids: [16777215 11668] ) ] spids: [16777215 11790] ) (command.SimpleCommand words: [{(ac_test)} {(strerror)} {(SQ <'!'>)} {(sys_errlist)} {(0)}] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 11812 stdin_parts: [ ('extern char *strerror(int);\n') ('int main(int ac, char *av[]) { return (*strerror(*av[ac])); }\n') ] ) ] ) (command.SimpleCommand words: [{(ac_test)} {(strsignal)} {(SQ <'!'>)} {(sys_siglist)} {(0)}] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 11834 stdin_parts: [ ('#include <string.h>\n') ('#include <signal.h>\n') ('int main(void) { return (strsignal(1)[0]); }\n') ] ) ] ) (command.SimpleCommand words: [{(ac_test)} {(strlcpy)}] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 11848 stdin_parts: [ ('#include <string.h>\n') ('int main(int ac, char *av[]) { return (strlcpy(*av, av[1],\n') (' (size_t)ac)); }\n') ] ) ] ) (command.SimpleCommand words: [{(ac_test)} {(flock_decl)} {(flock)} {(1)} {(SQ <'for declaration of flock()'>)}] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 11882 stdin_parts: [ ('#define MKSH_INCLUDES_ONLY\n') ('#include "sh.h"\n') ('#if HAVE_SYS_FILE_H\n') ('#include <sys/file.h>\n') ('#endif\n') ('int main(void) { return ((flock)(0, 0)); }\n') ] ) ] ) (command.SimpleCommand words: [{(ac_test)} {(revoke_decl)} {(revoke)} {(1)} {(SQ <'for declaration of revoke()'>)}] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 11903 stdin_parts: [ ('#define MKSH_INCLUDES_ONLY\n') ('#include "sh.h"\n') ('int main(void) { return ((revoke)("")); }\n') ] ) ] ) (command.SimpleCommand words: [ {(ac_test)} {(sys_errlist_decl)} {(sys_errlist)} {(0)} {(DQ ('for declaration of sys_errlist[] and sys_nerr'))} ] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 11924 stdin_parts: [ ('#define MKSH_INCLUDES_ONLY\n') ('#include "sh.h"\n') ('int main(void) { return (*sys_errlist[sys_nerr - 1] + isatty(0)); }\n') ] ) ] ) (command.SimpleCommand words: [ {(ac_test)} {(sys_siglist_decl)} {(sys_siglist)} {(0)} {(SQ <'for declaration of sys_siglist[]'>)} ] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 11945 stdin_parts: [ ('#define MKSH_INCLUDES_ONLY\n') ('#include "sh.h"\n') ('int main(void) { return (sys_siglist[0][0] + isatty(0)); }\n') ] ) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:fd spids:[11956]) op: Equal rhs: {(SQ <'if to use persistent history'>)} spids: [11956] ) ] spids: [11956] ) (command.AndOr ops: [Op_DPipe] children: [ (C {(ac_cache)} {(PERSISTENT_HISTORY)}) (command.Case to_match: {($ VSub_DollarName '$HAVE_MMAP') ($ VSub_DollarName '$HAVE_FLOCK') ($ VSub_DollarName '$HAVE_LOCK_FCNTL') } arms: [ (case_arm pat_list: [{(11) (Lit_Other '*')} {(101)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:fv spids:[11981]) op: Equal rhs: {(1)} spids: [11981] ) ] spids: [11981] ) ] spids: [11975 11979 11984 16777215] ) ] spids: [11967 11973 11986] ) ] ) (command.AndOr ops: [Op_DPipe] children: [ (C {(test)} {(1)} {(Lit_Other '=')} {($ VSub_DollarName '$fv')}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:check_categories spids:[11998]) op: Equal rhs: {(DQ ($ VSub_DollarName '$check_categories') (' no-histfile'))} spids: [11998] ) ] spids: [11998] ) ] ) (C {(ac_testdone)}) (C {(ac_cppflags)}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:save_CFLAGS spids:[12009]) op: Equal rhs: {($ VSub_DollarName '$CFLAGS')} spids: [12009] ) ] spids: [12009] ) (command.SimpleCommand words: [ {(ac_testn)} {(compile_time_asserts_) ($ VSub_Dollar '$$')} {(SQ )} {(SQ <'whether compile-time assertions pass'>)} ] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 12085 stdin_parts: [ ('#define MKSH_INCLUDES_ONLY\n') ('#include "sh.h"\n') ('#ifndef CHAR_BIT\n') ('#define CHAR_BIT 8\t/* defuse this test on really legacy systems */\n') ('#endif\n') ('struct ctasserts {\n') ('#define cta(name, assertion) char name[(assertion) ? 1 : -1]\n') ('/* this one should be defined by the standard */\n') ('cta(char_is_1_char, (sizeof(char) == 1) && (sizeof(signed char) == 1) &&\n') (' (sizeof(unsigned char) == 1));\n') ('cta(char_is_8_bits, ((CHAR_BIT) == 8) && ((int)(unsigned char)0xFF == 0xFF) &&\n') (' ((int)(unsigned char)0x100 == 0) && ((int)(unsigned char)(int)-1 == 0xFF));\n') ('/* the next assertion is probably not really needed */\n') ('cta(short_is_2_char, sizeof(short) == 2);\n') ('cta(short_size_no_matter_of_signedness, sizeof(short) == sizeof(unsigned short));\n') ('/* the next assertion is probably not really needed */\n') ('cta(int_is_4_char, sizeof(int) == 4);\n') ('cta(int_size_no_matter_of_signedness, sizeof(int) == sizeof(unsigned int));\n') ('\n') ('cta(long_ge_int, sizeof(long) >= sizeof(int));\n') ('cta(long_size_no_matter_of_signedness, sizeof(long) == sizeof(unsigned long));\n') ('\n') ('#ifndef MKSH_LEGACY_MODE\n') ('/* the next assertion is probably not really needed */\n') ('cta(ari_is_4_char, sizeof(mksh_ari_t) == 4);\n') ('/* but this is */\n') ( 'cta(ari_has_31_bit, 0 < (mksh_ari_t)(((((mksh_ari_t)1 << 15) << 15) - 1) * 2 + 1));\n' ) ('/* the next assertion is probably not really needed */\n') ('cta(uari_is_4_char, sizeof(mksh_uari_t) == 4);\n') ('/* but the next three are; we REQUIRE unsigned integer wraparound */\n') ( 'cta(uari_has_31_bit, 0 < (mksh_uari_t)(((((mksh_uari_t)1 << 15) << 15) - 1) * 2 + 1));\n' ) ( 'cta(uari_has_32_bit, 0 < (mksh_uari_t)(((((mksh_uari_t)1 << 15) << 15) - 1) * 4 + 3));\n' ) ('cta(uari_wrap_32_bit,\n') (' (mksh_uari_t)(((((mksh_uari_t)1 << 15) << 15) - 1) * 4 + 3) >\n') (' (mksh_uari_t)(((((mksh_uari_t)1 << 15) << 15) - 1) * 4 + 4));\n') ('#define NUM 22\n') ('#else\n') ('#define NUM 16\n') ('#endif\n') ('/* these are always required */\n') ('cta(ari_is_signed, (mksh_ari_t)-1 < (mksh_ari_t)0);\n') ('cta(uari_is_unsigned, (mksh_uari_t)-1 > (mksh_uari_t)0);\n') ('/* we require these to have the precisely same size and assume 2s complement */\n') ('cta(ari_size_no_matter_of_signedness, sizeof(mksh_ari_t) == sizeof(mksh_uari_t));\n') ('\n') ('cta(sizet_size_no_matter_of_signedness, sizeof(ssize_t) == sizeof(size_t));\n') ('cta(sizet_voidptr_same_size, sizeof(size_t) == sizeof(void *));\n') ('cta(sizet_funcptr_same_size, sizeof(size_t) == sizeof(void (*)(void)));\n') ('/* our formatting routines assume this */\n') ('cta(ptr_fits_in_long, sizeof(size_t) <= sizeof(long));\n') ('cta(ari_fits_in_long, sizeof(mksh_ari_t) <= sizeof(long));\n') ('/* for struct alignment people */\n') ('char padding[64 - NUM];\n') ('};\n') ('char ctasserts_dblcheck[sizeof(struct ctasserts) == 64 ? 1 : -1];\n') ('int main(void) { return (sizeof(ctasserts_dblcheck) + isatty(0)); }\n') ] ) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:CFLAGS spids:[12086]) op: Equal rhs: {($ VSub_DollarName '$save_CFLAGS')} spids: [12086] ) ] spids: [12086] ) (command.AndOr ops: [Op_DPipe] children: [ (C {(eval)} {(test)} {(1)} {(Lit_Other '=')} {(word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (HAVE_COMPILE_TIME_ASSERTS_) ($ VSub_Dollar '$$') } ) (command.ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {($ VSub_DollarName '$legacy')} {(Lit_Other '=')} {(1)}) terminator: <Op_Semi ';'> ) ] action: [ (command.SimpleCommand words: [{(ac_test)} {(long_32bit)} {(SQ )} {(SQ <'whether long is 32 bit wide'>)}] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 12158 stdin_parts: [ ('#define MKSH_INCLUDES_ONLY\n') ('#include "sh.h"\n') ('#ifndef CHAR_BIT\n') ('#define CHAR_BIT 0\n') ('#endif\n') ('struct ctasserts {\n') ('#define cta(name, assertion) char name[(assertion) ? 1 : -1]\n') ('cta(char_is_8_bits, (CHAR_BIT) == 8);\n') ('cta(long_is_32_bits, sizeof(long) == 4);\n') ('};\n') ('int main(void) { return (sizeof(struct ctasserts)); }\n') ] ) ] ) (command.SimpleCommand words: [ {(ac_test)} {(long_64bit)} {(SQ <'!'>)} {(long_32bit)} {(0)} {(SQ <'whether long is 64 bit wide'>)} ] redirects: [ (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(SQ <EOF>)} here_end_span_id: 12193 stdin_parts: [ ('#define MKSH_INCLUDES_ONLY\n') ('#include "sh.h"\n') ('#ifndef CHAR_BIT\n') ('#define CHAR_BIT 0\n') ('#endif\n') ('struct ctasserts {\n') ('#define cta(name, assertion) char name[(assertion) ? 1 : -1]\n') ('cta(char_is_8_bits, (CHAR_BIT) == 8);\n') ('cta(long_is_64_bits, sizeof(long) == 8);\n') ('};\n') ('int main(void) { return (sizeof(struct ctasserts)); }\n') ] ) ] ) (command.Case to_match: {($ VSub_DollarName '$HAVE_LONG_32BIT') ($ VSub_DollarName '$HAVE_LONG_64BIT')} arms: [ (case_arm pat_list: [{(10)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:check_categories spids:[12207]) op: Equal rhs: {(DQ ($ VSub_DollarName '$check_categories') (' int:32'))} spids: [12207] ) ] spids: [12207] ) ] spids: [12204 12205 12213 16777215] ) (case_arm pat_list: [{(01)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:check_categories spids:[12219]) op: Equal rhs: {(DQ ($ VSub_DollarName '$check_categories') (' int:64'))} spids: [12219] ) ] spids: [12219] ) ] spids: [12216 12217 12225 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:check_categories spids:[12231]) op: Equal rhs: {(DQ ($ VSub_DollarName '$check_categories') (' int:u'))} spids: [12231] ) ] spids: [12231] ) ] spids: [12228 12229 12237 16777215] ) ] spids: [12196 12201 12240] ) ] spids: [16777215 12128] ) ] spids: [16777215 12242] ) (command.AndOr ops: [Op_DAmp] children: [ (C {(test)} {(0)} {(Lit_Other '=')} {($ VSub_DollarName '$HAVE_SYS_SIGNAME')}) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(ac_testinit)} {(cpp_dd)} {(SQ )} {(SQ <'checking if the C Preprocessor supports -dD'>)} ) terminator: <Op_Semi ';'> ) ] action: [ (command.SimpleCommand words: [{(echo)} {(SQ <'#define foo bar'>)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(conftest.c)})] ) (C {(vv)} {(SQ <']'>)} { (DQ ($ VSub_DollarName '$CPP') (' ') ($ VSub_DollarName '$CFLAGS') (' ') ($ VSub_DollarName '$CPPFLAGS') (' ') ($ VSub_DollarName '$NOWARN') (' -dD conftest.c >x') ) } ) (command.AndOr ops: [Op_DAmp] children: [ (command.SimpleCommand words: [{(grep)} {(SQ <'#define foo bar'>)} {(x)}] redirects: [ (redir.Redir op: <Redir_Great '>'> fd: 16777215 arg_word: {(/dev/null)} ) (redir.Redir op: <Redir_GreatAnd '2>&'> fd: 2 arg_word: {(1)} ) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:fv spids:[12327]) op: Equal rhs: {(1)} spids: [12327] ) ] spids: [12327] ) ] ) (C {(rmf)} {(conftest.c)} {(x)} {(vv.out)}) (C {(ac_testdone)}) ] spids: [16777215 12280] ) ] spids: [16777215 12342] ) ] ) (C {($ VSub_DollarName '$e')} {(...)} {(done.)}) (command.SimpleCommand words: [{(echo)} {(wq)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(x)})] ) (command.AndOr ops: [Op_DAmp] children: [ (command.Pipeline children: [ (command.SimpleCommand words: [{(ed)} {(x)}] redirects: [ (redir.Redir op:<Redir_Less '<'> fd:16777215 arg_word:{(x)}) (redir.Redir op:<Redir_Great '2>'> fd:2 arg_word:{(/dev/null)}) ] ) (command.SimpleCommand words: [{(grep)} {(3)}] redirects: [ (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(/dev/null)}) (redir.Redir op:<Redir_GreatAnd '2>&'> fd:2 arg_word:{(1)}) ] ) ] negated: F ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:check_categories spids:[12400]) op: Equal rhs: {(DQ ($ VSub_DollarName '$check_categories') (' ') ($ VSub_DollarName '$oldish_ed'))} spids: [12400] ) ] spids: [12400] ) ] ) (C {(rmf)} {(x)} {(vv.out)}) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {(0)} {(Lit_Other '=')} {($ VSub_DollarName '$HAVE_SYS_SIGNAME')}) terminator: <Op_Semi ';'> ) ] action: [ (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {(1)} {(Lit_Other '=')} {($ VSub_DollarName '$HAVE_CPP_DD')}) terminator: <Op_Semi ';'> ) ] action: [ (C {($ VSub_DollarName '$e')} {(Generating)} {(list)} {(of)} {(signal)} {(names...)}) ] spids: [16777215 12439] ) ] else_action: [ (C {($ VSub_DollarName '$e')} {(No)} {(list)} {(of)} {(signal)} {(names)} {(available)} {(via)} {(cpp.)} {(Falling)} {(back...)} ) ] spids: [12455 12481] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:sigseenone spids:[12484]) op: Equal rhs: {(Lit_Other ':')} spids: [12484] ) ] spids: [12484] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:sigseentwo spids:[12488]) op: Equal rhs: {(Lit_Other ':')} spids: [12488] ) ] spids: [12488] ) (command.SimpleCommand words: [ {(echo)} { (SQ <'#include <signal.h>\n'> <'#if defined(NSIG_MAX)\n'> <'#define cfg_NSIG NSIG_MAX\n'> <'#elif defined(NSIG)\n'> <'#define cfg_NSIG NSIG\n'> <'#elif defined(_NSIG)\n'> <'#define cfg_NSIG _NSIG\n'> <'#elif defined(SIGMAX)\n'> <'#define cfg_NSIG (SIGMAX + 1)\n'> <'#elif defined(_SIGMAX)\n'> <'#define cfg_NSIG (_SIGMAX + 1)\n'> <'#else\n'> <'/*XXX better error out, see sh.h */\n'> <'#define cfg_NSIG 64\n'> <'#endif\n'> <'int\n'> <'mksh_cfg= cfg_NSIG\n'> <';'> ) } ] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(conftest.c)})] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:NSIG spids:[12523]) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [ (command.Pipeline children: [ (C {(vq)} { (DQ ($ VSub_DollarName '$CPP') (' ') ($ VSub_DollarName '$CFLAGS') (' ') ($ VSub_DollarName '$CPPFLAGS') (' ') ($ VSub_DollarName '$NOWARN') (' conftest.c') ) } ) (C {(grep)} {(-v)} {(SQ <'^#'>)}) (C {(sed)} { (SQ <'/mksh_cfg.*= *$/{\n'> <'\t\tN\n'> <'\t\ts/\\n/ /\n'> <'\t\t}'> ) } ) (C {(grep)} {(SQ <'^ *mksh_cfg *='>)}) (C {(sed)} { (SQ < 's/^ *mksh_cfg *=[\t ]*\\([()0-9x+-][()0-9x+\t -]*\\).*$/\\1/' > ) } ) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [12524 12582] ) } spids: [12523] ) ] spids: [12523] ) (command.Case to_match: {($ VSub_DollarName '$NSIG')} arms: [ (case_arm pat_list: [{(Lit_Other '*') (mksh_cfg) (Lit_Other '*')}] action: [ (command.Sentence child: (C {($ VSub_DollarName '$e')} {(DQ ("Error: NSIG='") ($ VSub_DollarName '$NSIG') ("'"))} ) terminator: <Op_Semi ';'> ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:NSIG spids:[12606]) op: Equal rhs: {(0)} spids: [12606] ) ] spids: [12606] ) ] spids: [12592 12595 12609 16777215] ) (case_arm pat_list: [ {(Lit_Other '*') (Lit_Other '[') (word_part.EscapedLiteralPart token: <Lit_EscapedChar '\\ '> ) (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\('>) (word_part.EscapedLiteralPart token: <Lit_EscapedChar '\\)'> ) (Lit_Other '+') (-) (Lit_Other ']') (Lit_Other '*') } ] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:NSIG spids:[12623]) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [ (command.SimpleCommand words: [ {(DQ ($ VSub_DollarName '$AWK'))} { (DQ ('BEGIN { print ') ($ VSub_DollarName '$NSIG') (' }')) } ] redirects: [ (redir.Redir op: <Redir_Less '<'> fd: 16777215 arg_word: {(/dev/null)} ) ] ) ] ) left_token: <Left_Backtick '`'> spids: [12624 12637] ) } spids: [12623] ) ] spids: [12623] ) ] spids: [12612 12621 12639 16777215] ) ] spids: [12585 12589 12642] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:printf spids:[12645]) op: Equal rhs: {(printf)} spids: [12645] ) ] spids: [12645] ) (command.AndOr ops: [Op_DPipe] children: [ (command.Subshell child: (C {(printf)} {(hallo)}) redirects: [ (redir.Redir op: <Redir_Great '>'> fd: 16777215 arg_word: {(/dev/null)} ) (redir.Redir op:<Redir_GreatAnd '2>&'> fd:2 arg_word:{(1)}) ] spids: [12649 12653] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:printf spids:[12663]) op: Equal rhs: {(echo)} spids: [12663] ) ] spids: [12663] ) ] ) (command.AndOr ops: [Op_DPipe Op_DPipe] children: [ (C {(test)} {($ VSub_DollarName '$printf')} {(Lit_Other '=')} {(echo)}) (C {(test)} { (DQ (word_part.CommandSubPart command_list: (command.CommandList children: [(C {(printf)} {(Lit_Other '%') (d)} {(42)})] ) left_token: <Left_Backtick '`'> spids: [12680 12687] ) ) } {(Lit_Other '=')} {(42)} ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:printf spids:[12696]) op: Equal rhs: {(echo)} spids: [12696] ) ] spids: [12696] ) ] ) (command.AndOr ops: [Op_DPipe] children: [ (C {(test)} {($ VSub_DollarName '$printf')} {(Lit_Other '=')} {(echo)}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:NSIG spids:[12710]) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [ (command.SimpleCommand words: [ {(printf)} {(Lit_Other '%') (d)} {(DQ ($ VSub_DollarName '$NSIG'))} ] redirects: [ (redir.Redir op: <Redir_Great '2>'> fd: 2 arg_word: {(/dev/null)} ) ] ) ] ) left_token: <Left_Backtick '`'> spids: [12711 12723] ) } spids: [12710] ) ] spids: [12710] ) ] ) (C {($ VSub_DollarName '$printf')} {(DQ ('NSIG=') ($ VSub_DollarName '$NSIG') (' ... '))}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:sigs spids:[12735]) op: Equal rhs: {(DQ ('ABRT FPE ILL INT SEGV TERM ALRM BUS CHLD CONT HUP KILL PIPE QUIT'))} spids: [12735] ) ] spids: [12735] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:sigs spids:[12741]) op: Equal rhs: { (DQ ($ VSub_DollarName '$sigs') (' STOP TSTP TTIN TTOU USR1 USR2 POLL PROF SYS TRAP URG VTALRM') ) } spids: [12741] ) ] spids: [12741] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:sigs spids:[12748]) op: Equal rhs: { (DQ ($ VSub_DollarName '$sigs') (' XCPU XFSZ INFO WINCH EMT IO DIL LOST PWR SAK CLD IOT STKFLT') ) } spids: [12748] ) ] spids: [12748] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:sigs spids:[12755]) op: Equal rhs: { (DQ ($ VSub_DollarName '$sigs') (' ABND DCE DUMP IOERR TRACE DANGER THCONT THSTOP RESV UNUSED') ) } spids: [12755] ) ] spids: [12755] ) (command.AndOr ops: [Op_DAmp Op_DAmp] children: [ (C {(test)} {(1)} {(Lit_Other '=')} {($ VSub_DollarName '$HAVE_CPP_DD')}) (C {(test)} {($ VSub_DollarName '$NSIG')} {(-gt)} {(1)}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:sigs spids:[12782]) op: Equal rhs: {(DQ ($ VSub_DollarName '$sigs') (' ')) (word_part.CommandSubPart command_list: (command.CommandList children: [ (command.Pipeline children: [ (C {(vq)} { (DQ ($ VSub_DollarName '$CPP') (' ') ($ VSub_DollarName '$CFLAGS') (' ') ($ VSub_DollarName '$CPPFLAGS') (' ') ($ VSub_DollarName '$NOWARN') (' -dD conftest.c') ) } ) (C {(grep)} {(SQ <'[\t ]SIG[A-Z0-9][A-Z0-9]*[\t ]'>)}) (C {(sed)} {(SQ <'s/^.*[\t ]SIG\\([A-Z0-9][A-Z0-9]*\\)[\t ].*$/\\1/'>)} ) (C {(sort)}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [12787 12826] ) } spids: [12782] ) ] spids: [12782] ) ] ) (command.AndOr ops: [Op_DPipe] children: [ (C {(test)} {($ VSub_DollarName '$NSIG')} {(-gt)} {(1)}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:sigs spids:[12839]) op: Equal rhs: (word.EmptyWord) spids: [12839] ) ] spids: [12839] ) ] ) (command.Pipeline children: [ (command.ForEach iter_name: name iter_words: [{($ VSub_DollarName '$sigs')}] do_arg_iter: F body: (command.DoGroup children: [ (command.Case to_match: {($ VSub_DollarName '$sigseenone')} arms: [ (case_arm pat_list: [ {(Lit_Other '*') (Lit_Other ':') ($ VSub_DollarName '$name') (Lit_Other ':') (Lit_Other '*') } ] action: [(command.ControlFlow token:<ControlFlow_Continue continue>)] spids: [12861 12866 12870 16777215] ) ] spids: [12854 12858 12873] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:sigseenone spids:[12876]) op: Equal rhs: {($ VSub_DollarName '$sigseenone') ($ VSub_DollarName '$name') (Lit_Other ':') } spids: [12876] ) ] spids: [12876] ) (command.SimpleCommand words: [{(echo)} {(SQ <'#include <signal.h>'>)}] redirects: [ (redir.Redir op: <Redir_Great '>'> fd: 16777215 arg_word: {(conftest.c)} ) ] ) (command.SimpleCommand words: [{(echo)} {(int)}] redirects: [ (redir.Redir op: <Redir_DGreat '>>'> fd: 16777215 arg_word: {(conftest.c)} ) ] ) (command.SimpleCommand words: [ {(echo)} {(Lit_VarLike 'mksh_cfg=')} {(SIG) ($ VSub_DollarName '$name')} ] redirects: [ (redir.Redir op: <Redir_DGreat '>>'> fd: 16777215 arg_word: {(conftest.c)} ) ] ) (command.SimpleCommand words: [{(echo)} {(SQ <';'>)}] redirects: [ (redir.Redir op: <Redir_DGreat '>>'> fd: 16777215 arg_word: {(conftest.c)} ) ] ) (command.Pipeline children: [ (C {(vq)} { (DQ ($ VSub_DollarName '$CPP') (' ') ($ VSub_DollarName '$CFLAGS') (' ') ($ VSub_DollarName '$CPPFLAGS') (' ') ($ VSub_DollarName '$NOWARN') (' conftest.c') ) } ) (C {(grep)} {(-v)} {(SQ <'^#'>)}) (C {(sed)} { (SQ <'/mksh_cfg.*= *$/{\n'> <'\t\t\tN\n'> <'\t\t\ts/\\n/ /\n'> <'\t\t\t}'> ) } ) (C {(grep)} {(SQ <'^ *mksh_cfg *='>)}) (C {(sed)} {(SQ <'s/^ *mksh_cfg *=[\t ]*\\([0-9][0-9x]*\\).*$/:\\1 '>) ($ VSub_DollarName '$name') (/) } ) ] negated: F ) ] spids: [12851 12986] ) spids: [12847 12849] ) (C {(sed)} {(-n)} {(SQ <'/^:[^ ]/s/^://p'>)}) (command.WhileUntil keyword: <KW_While while> cond: [ (command.Sentence child: (C {(read)} {(nr)} {(name)}) terminator: <Op_Semi ';'> ) ] body: (command.DoGroup children: [ (command.AndOr ops: [Op_DPipe] children: [ (C {(test)} {($ VSub_DollarName '$printf')} {(Lit_Other '=')} {(echo)}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:nr spids:[13022]) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [ (command.SimpleCommand words: [ {(printf)} {(Lit_Other '%') (d)} {(DQ ($ VSub_DollarName '$nr'))} ] redirects: [ (redir.Redir op: <Redir_Great '2>'> fd: 2 arg_word: {(/dev/null)} ) ] ) ] ) left_token: <Left_Backtick '`'> spids: [13023 13035] ) } spids: [13022] ) ] spids: [13022] ) ] ) (command.AndOr ops: [Op_DAmp Op_DPipe] children: [ (C {(test)} {($ VSub_DollarName '$nr')} {(-gt)} {(0)}) (C {(test)} {($ VSub_DollarName '$nr')} {(-lt)} {($ VSub_DollarName '$NSIG')}) (command.ControlFlow token: <ControlFlow_Continue continue> ) ] ) (command.Case to_match: {($ VSub_DollarName '$sigseentwo')} arms: [ (case_arm pat_list: [ {(Lit_Other '*') (Lit_Other ':') ($ VSub_DollarName '$nr') (Lit_Other ':') (Lit_Other '*') } ] spids: [13068 13073 13075 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (C {(echo)} { (DQ ('\t\t{ ') (word_part.EscapedLiteralPart token: <Lit_EscapedChar '\\"'> ) ($ VSub_DollarName '$name') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (', ') ($ VSub_DollarName '$nr') (' },') ) } ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:sigseentwo spids:[13094]) op: Equal rhs: {($ VSub_DollarName '$sigseentwo') ($ VSub_DollarName '$nr') (Lit_Other ':') } spids: [13094] ) ] spids: [13094] ) (command.SimpleCommand words: [ {($ VSub_DollarName '$printf')} { (DQ ($ VSub_DollarName '$name') ('=') ($ VSub_DollarName '$nr') (' ') ) } ] redirects: [ (redir.Redir op: <Redir_GreatAnd '>&'> fd: 16777215 arg_word: {(2)} ) ] ) ] spids: [13078 13079 13113 16777215] ) ] spids: [13061 13065 13116] ) ] spids: [13009 13119] ) redirects: [ (redir.Redir op:<Redir_GreatAnd '2>&'> fd:2 arg_word:{(1)}) (redir.Redir op: <Redir_Great '>'> fd: 16777215 arg_word: {(signames.inc)} ) ] ) ] negated: F ) (C {(rmf)} {(conftest.c)}) (C {($ VSub_DollarName '$e')} {(done.)}) ] spids: [16777215 12425] ) ] spids: [16777215 13137] ) (C {(addsrcs)} {(SQ <'!'>)} {(HAVE_STRLCPY)} {(strlcpy.c)}) (C {(addsrcs)} {(USE_PRINTF_BUILTIN)} {(printf.c)}) (command.AndOr ops: [Op_DAmp] children: [ (C {(test)} {(1)} {(Lit_Other '=')} {(DQ ($ VSub_DollarName '$USE_PRINTF_BUILTIN'))}) (C {(add_cppflags)} {(-DMKSH_PRINTF_BUILTIN)}) ] ) (command.AndOr ops: [Op_DAmp] children: [ (C {(test)} {(1)} {(Lit_Other '=')} {(DQ ($ VSub_DollarName '$HAVE_CAN_VERB'))}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:CFLAGS spids:[13184]) op: Equal rhs: {(DQ ($ VSub_DollarName '$CFLAGS') (' -verbose'))} spids: [13184] ) ] spids: [13184] ) ] ) (C {(add_cppflags)} {(-DMKSH_BUILD_R) (Lit_Other '=') (523)}) (C {($ VSub_DollarName '$e')} {($ VSub_DollarName '$bi') ($ VSub_DollarName '$me') (Lit_Other ':')} {(Finished)} {(configuration)} {(testing) (Lit_Comma ',')} {(now)} {(producing)} {(output.) ($ VSub_DollarName '$ao')} ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:files spids:[13218]) op: Equal rhs: (word.EmptyWord) spids: [13218] ) ] spids: [13218] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:objs spids:[13220]) op: Equal rhs: (word.EmptyWord) spids: [13220] ) ] spids: [13220] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:sp spids:[13222]) op: Equal rhs: (word.EmptyWord) spids: [13222] ) ] spids: [13222] ) (command.Case to_match: {($ VSub_DollarName '$tcfn')} arms: [ (case_arm pat_list: [{(a.exe)} {(conftest.exe)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:mkshexe spids:[13236]) op: Equal rhs: {($ VSub_DollarName '$tfn') (.exe)} spids: [13236] ) ] spids: [13236] ) (C {(add_cppflags)} {(-DMKSH_EXE_EXT)}) ] spids: [13230 13233 13246 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:mkshexe spids:[13252]) op: Equal rhs: {($ VSub_DollarName '$tfn')} spids: [13252] ) ] spids: [13252] ) ] spids: [13248 13249 13256 16777215] ) ] spids: [13224 13228 13258] ) (command.Case to_match: {($ VSub_DollarName '$curdir')} arms: [ (case_arm pat_list: [ {(Lit_Other '*') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\ '>) (Lit_Other '*') } ] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:mkshshebang spids:[13271]) op: Equal rhs: {(DQ ('#!./') ($ VSub_DollarName '$mkshexe'))} spids: [13271] ) ] spids: [13271] ) ] spids: [13266 13269 13277 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:mkshshebang spids:[13282]) op: Equal rhs: {(DQ ('#!') ($ VSub_DollarName '$curdir') (/) ($ VSub_DollarName '$mkshexe'))} spids: [13282] ) ] spids: [13282] ) ] spids: [13279 13280 13290 16777215] ) ] spids: [13260 13264 13292] ) (command.SimpleCommand words: [{(cat)}] redirects: [ (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(test.sh)}) (redir.HereDoc op: <Redir_DLessDash '<<-'> fd: 16777215 here_begin: {(EOF)} here_end_span_id: 13635 stdin_parts: [ ($ VSub_DollarName '$mkshshebang') ('\n') ("LC_ALL=C PATH='") ($ VSub_DollarName '$PATH') ("'; export LC_ALL PATH\n") ('test -n ') (Right_DoubleQuote '"') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (KSH_VERSION) (Right_DoubleQuote '"') (' || exit 1\n') ('set -A check_categories -- ') ($ VSub_DollarName '$check_categories') ('\n') ("pflag='") ($ VSub_DollarName '$curdir') (/) ($ VSub_DollarName '$mkshexe') ("'\n") ("sflag='") ($ VSub_DollarName '$srcdir') ("/check.t'\n") ('usee=0 Pflag=0 Sflag=0 uset=0 vflag=1 xflag=0\n') ('while getopts ') (Right_DoubleQuote '"') ('C:e:fPp:QSs:t:v') (Right_DoubleQuote '"') (' ch; do case ') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('ch {\n') ('(C)\tcheck_categories[') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('{#check_categories[*]}]=') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('OPTARG ;;\n') ('(e)\tusee=1; eflag=') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('OPTARG ;;\n') ('(f)\tcheck_categories[') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('{#check_categories[*]}]=fastbox ;;\n') ('(P)\tPflag=1 ;;\n') ('(+P)\tPflag=0 ;;\n') ('(p)\tpflag=') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('OPTARG ;;\n') ('(Q)\tvflag=0 ;;\n') ('(+Q)\tvflag=1 ;;\n') ('(S)\tSflag=1 ;;\n') ('(+S)\tSflag=0 ;;\n') ('(s)\tsflag=') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('OPTARG ;;\n') ('(t)\tuset=1; tflag=') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('OPTARG ;;\n') ('(v)\tvflag=1 ;;\n') ('(+v)\tvflag=0 ;;\n') ('(*)\txflag=1 ;;\n') ('}\n') ('done\n') ('shift ') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('((OPTIND - 1))\n') ("set -A args -- '") ($ VSub_DollarName '$srcdir') ("/check.pl' -p ") (Right_DoubleQuote '"') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (pflag) (Right_DoubleQuote '"') ('\n') ('x=\n') ('for y in ') (Right_DoubleQuote '"') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('{check_categories[@]}') (Right_DoubleQuote '"') ('; do\n') ('x=') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('x,') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('y\n') ('done\n') ('if [[ -n ') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('x ]]; then\n') ('args[') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('{#args[*]}]=-C\n') ('args[') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('{#args[*]}]=') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('{x#,}\n') ('fi\n') ('if (( usee )); then\n') ('args[') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('{#args[*]}]=-e\n') ('args[') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('{#args[*]}]=') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('eflag\n') ('fi\n') ('(( Pflag )) && args[') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('{#args[*]}]=-P\n') ('if (( uset )); then\n') ('args[') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('{#args[*]}]=-t\n') ('args[') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('{#args[*]}]=') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('tflag\n') ('fi\n') ('(( vflag )) && args[') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('{#args[*]}]=-v\n') ('(( xflag )) && args[') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('{#args[*]}]=-x\t# force usage by synerr\n') ('if [[ -n ') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('TMPDIR && -d ') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('TMPDIR/. ]]; then\n') ('args[') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('{#args[*]}]=-T\n') ('args[') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('{#args[*]}]=') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('TMPDIR\n') ('fi\n') ('print Testing mksh for conformance:\n') ("grep -F -e Mir''OS: -e MIRBSD ") (Right_DoubleQuote '"') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (sflag) (Right_DoubleQuote '"') ('\n') ('print ') (Right_DoubleQuote '"') ('This shell is actually:') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) (n) (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) (t) (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (KSH_VERSION) (Right_DoubleQuote '"') ('\n') ("print 'test.sh built for mksh ") ($ VSub_DollarName '$dstversion') ("'\n") ("cstr='") (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('os = defined ') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('^O ? ') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('^O : ') (Right_DoubleQuote '"') (unknown) (Right_DoubleQuote '"') (";'\n") ('cstr=') (Right_DoubleQuote '"') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (cstr) (Right_DoubleQuote '"') ("'print ") (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('os . ') (Right_DoubleQuote '"') (', Perl version ') (Right_DoubleQuote '"') (' . ') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ("];'\n") ('for perli in ') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('PERL perl5 perl no; do\n') ('if [[ ') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('perli = no ]]; then\n') ('print Cannot find a working Perl interpreter, aborting.\n') ('exit 1\n') ('fi\n') ('print ') (Right_DoubleQuote '"') ("Trying Perl interpreter '") (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ("perli'...") (Right_DoubleQuote '"') ('\n') ('perlos=') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('(') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('perli -e ') (Right_DoubleQuote '"') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (cstr) (Right_DoubleQuote '"') (')\n') ('rv=') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('?\n') ('print ') (Right_DoubleQuote '"') ('Errorlevel ') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ("rv, running on '") (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ("perlos'") (Right_DoubleQuote '"') ('\n') ('if (( rv )); then\n') ('print ') (Right_DoubleQuote '"') ('=> not using') (Right_DoubleQuote '"') ('\n') ('continue\n') ('fi\n') ('if [[ -n ') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('perlos ]]; then\n') ('print ') (Right_DoubleQuote '"') ('=> using it') (Right_DoubleQuote '"') ('\n') ('break\n') ('fi\n') ('done\n') ('(( Sflag )) || echo + ') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('perli ') (Right_DoubleQuote '"') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('{args[@]}') (Right_DoubleQuote '"') (' -s ') (Right_DoubleQuote '"') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (sflag) (Right_DoubleQuote '"') (' ') (Right_DoubleQuote '"') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('@') (Right_DoubleQuote '"') ('\n') ('(( Sflag )) || exec ') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('perli ') (Right_DoubleQuote '"') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('{args[@]}') (Right_DoubleQuote '"') (' -s ') (Right_DoubleQuote '"') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (sflag) (Right_DoubleQuote '"') (' ') (Right_DoubleQuote '"') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('@') (Right_DoubleQuote '"') ($ VSub_DollarName '$tsts') ('\n') ('# use of the -S option for check.t split into multiple chunks\n') ('rv=0\n') ('for s in ') (Right_DoubleQuote '"') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (sflag) (Right_DoubleQuote '"') ('.*; do\n') ('echo + ') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('perli ') (Right_DoubleQuote '"') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('{args[@]}') (Right_DoubleQuote '"') (' -s ') (Right_DoubleQuote '"') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (s) (Right_DoubleQuote '"') (' ') (Right_DoubleQuote '"') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('@') (Right_DoubleQuote '"') ('\n') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('perli ') (Right_DoubleQuote '"') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('{args[@]}') (Right_DoubleQuote '"') (' -s ') (Right_DoubleQuote '"') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (s) (Right_DoubleQuote '"') (' ') (Right_DoubleQuote '"') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('@') (Right_DoubleQuote '"') ($ VSub_DollarName '$tsts') ('\n') ('rc=') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('?\n') ('(( rv = rv ? rv : rc ))\n') ('done\n') ('exit ') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('rv\n') ] ) ] ) (C {(chmod)} {(755)} {(test.sh)}) (command.Case to_match: {($ VSub_DollarName '$cm')} arms: [ (case_arm pat_list: [{(dragonegg)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:emitbc spids:[13652]) op: Equal rhs: {(DQ ('-S -flto'))} spids: [13652] ) ] spids: [13652] ) ] spids: [13648 13649 13658 16777215] ) (case_arm pat_list: [{(llvm)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:emitbc spids:[13664]) op: Equal rhs: {(DQ ('-emit-llvm -c'))} spids: [13664] ) ] spids: [13664] ) ] spids: [13660 13661 13670 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:emitbc spids:[13676]) op: Equal rhs: {(-c)} spids: [13676] ) ] spids: [13676] ) ] spids: [13672 13673 13680 16777215] ) ] spids: [13642 13646 13682] ) (command.SimpleCommand words: [{(echo)} {(DQ (': # work around NeXTstep bug'))}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(Rebuild.sh)})] ) (C {(cd)} {(DQ ($ VSub_DollarName '$srcdir'))}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:optfiles spids:[13699]) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children:[(C {(echo)} {(Lit_Other '*') (.opt)})]) left_token: <Left_Backtick '`'> spids: [13700 13705] ) } spids: [13699] ) ] spids: [13699] ) (C {(cd)} {(DQ ($ VSub_DollarName '$curdir'))}) (command.ForEach iter_name: file iter_words: [{($ VSub_DollarName '$optfiles')}] do_arg_iter: F body: (command.DoGroup children: [ (C {(echo)} {(DQ ("echo + Running genopt on '") ($ VSub_DollarName '$file') ("'..."))}) (C {(echo)} { (DQ ("(srcfile='") ($ VSub_DollarName '$srcdir') (/) ($ VSub_DollarName '$file') ("'; BUILDSH_RUN_GENOPT=1; . '") ($ VSub_DollarName '$srcdir') ("/Build.sh')") ) } ) ] spids: [13722 13746] ) redirects: [(redir.Redir op:<Redir_DGreat '>>'> fd:16777215 arg_word:{(Rebuild.sh)})] spids: [13718 13720] ) (command.SimpleCommand words: [{(echo)} {(set)} {(-x)}] redirects: [(redir.Redir op:<Redir_DGreat '>>'> fd:16777215 arg_word:{(Rebuild.sh)})] ) (command.ForEach iter_name: file iter_words: [{($ VSub_DollarName '$SRCS')}] do_arg_iter: F body: (command.DoGroup children: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:op spids:[13772]) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [ (command.Pipeline children: [ (C {(echo)} {(x) (DQ ($ VSub_DollarName '$file'))}) (C {(sed)} {(SQ <'s/^x\\(.*\\)\\.c$/\\1./'>)}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [13773 13788] ) } spids: [13772] ) ] spids: [13772] ) (command.AndOr ops: [Op_DPipe] children: [ (C {(test)} {(-f)} {($ VSub_DollarName '$file')}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:file spids:[13799]) op: Equal rhs: {($ VSub_DollarName '$srcdir') (/) ($ VSub_DollarName '$file')} spids: [13799] ) ] spids: [13799] ) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:files spids:[13805]) op: Equal rhs: { (DQ ($ VSub_DollarName '$files') ($ VSub_DollarName '$sp') ($ VSub_DollarName '$file') ) } spids: [13805] ) ] spids: [13805] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:sp spids:[13813]) op: Equal rhs: {(SQ <' '>)} spids: [13813] ) ] spids: [13813] ) (command.SimpleCommand words: [ {(echo)} { (DQ ($ VSub_DollarName '$CC') (' ') ($ VSub_DollarName '$CFLAGS') (' ') ($ VSub_DollarName '$CPPFLAGS') (' ') ($ VSub_DollarName '$emitbc') (' ') ($ VSub_DollarName '$file') (' || exit 1') ) } ] redirects: [(redir.Redir op:<Redir_DGreat '>>'> fd:16777215 arg_word:{(Rebuild.sh)})] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {($ VSub_DollarName '$cm')} {(Lit_Other '=')} {(dragonegg)}) terminator: <Op_Semi ';'> ) ] action: [ (command.SimpleCommand words: [{(echo)} {(DQ ('mv ') (${ VSub_Name op) ('s ') (${ VSub_Name op) (ll))}] redirects: [ (redir.Redir op: <Redir_DGreat '>>'> fd: 16777215 arg_word: {(Rebuild.sh)} ) ] ) (command.SimpleCommand words: [{(echo)} {(DQ ('llvm-as ') (${ VSub_Name op) ('ll || exit 1'))}] redirects: [ (redir.Redir op: <Redir_DGreat '>>'> fd: 16777215 arg_word: {(Rebuild.sh)} ) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:objs spids:[13884]) op: Equal rhs: { (DQ ($ VSub_DollarName '$objs') ($ VSub_DollarName '$sp') (${ VSub_Name op) (bc) ) } spids: [13884] ) ] spids: [13884] ) ] spids: [16777215 13849] ) ] else_action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:objs spids:[13898]) op: Equal rhs: { (DQ ($ VSub_DollarName '$objs') ($ VSub_DollarName '$sp') (${ VSub_Name op) (o) ) } spids: [13898] ) ] spids: [13898] ) ] spids: [13895 13909] ) ] spids: [13769 13911] ) spids: [13765 13767] ) (command.Case to_match: {($ VSub_DollarName '$cm')} arms: [ (case_arm pat_list: [{(dragonegg)} {(llvm)}] action: [ (command.SimpleCommand words: [{(echo)} {(DQ ('rm -f ') ($ VSub_DollarName '$tfn') (.s))}] redirects: [(redir.Redir op:<Redir_DGreat '>>'> fd:16777215 arg_word:{(Rebuild.sh)})] ) (command.SimpleCommand words: [ {(echo)} { (DQ ('llvm-link -o - ') ($ VSub_DollarName '$objs') (' | opt ') ($ VSub_DollarName '$optflags') (' | llc -o ') ($ VSub_DollarName '$tfn') (.s) ) } ] redirects: [(redir.Redir op:<Redir_DGreat '>>'> fd:16777215 arg_word:{(Rebuild.sh)})] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:lobjs spids:[13953]) op: Equal rhs: {($ VSub_DollarName '$tfn') (.s)} spids: [13953] ) ] spids: [13953] ) ] spids: [13919 13922 13958 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:lobjs spids:[13964]) op: Equal rhs: {($ VSub_DollarName '$objs')} spids: [13964] ) ] spids: [13964] ) ] spids: [13960 13961 13968 16777215] ) ] spids: [13913 13917 13970] ) (command.SimpleCommand words: [{(echo)} {(Lit_VarLike 'tcfn=') ($ VSub_DollarName '$mkshexe')}] redirects: [(redir.Redir op:<Redir_DGreat '>>'> fd:16777215 arg_word:{(Rebuild.sh)})] ) (command.SimpleCommand words: [ {(echo)} { (DQ ($ VSub_DollarName '$CC') (' ') ($ VSub_DollarName '$CFLAGS') (' ') ($ VSub_DollarName '$LDFLAGS') (' -o ') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('tcfn ') ($ VSub_DollarName '$lobjs') (' ') ($ VSub_DollarName '$LIBS') (' ') ($ VSub_DollarName '$ccpr') ) } ] redirects: [(redir.Redir op:<Redir_DGreat '>>'> fd:16777215 arg_word:{(Rebuild.sh)})] ) (command.SimpleCommand words: [ {(echo)} { (DQ ('test -f ') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('tcfn || exit 1; ') ($ VSub_DollarName '$SIZE') (' ') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (tcfn) ) } ] redirects: [(redir.Redir op:<Redir_DGreat '>>'> fd:16777215 arg_word:{(Rebuild.sh)})] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {($ VSub_DollarName '$cm')} {(Lit_Other '=')} {(makefile)}) terminator: <Op_Semi ';'> ) ] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:extras spids:[14030]) op: Equal rhs: {(SQ <'emacsfn.h rlimits.opt sh.h sh_flags.opt var_spec.h'>)} spids: [14030] ) ] spids: [14030] ) (command.AndOr ops: [Op_DAmp] children: [ (C {(test)} {(0)} {(Lit_Other '=')} {($ VSub_DollarName '$HAVE_SYS_SIGNAME')}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:extras spids:[14046]) op: Equal rhs: {(DQ ($ VSub_DollarName '$extras') (' signames.inc'))} spids: [14046] ) ] spids: [14046] ) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:gens spids:[14053]) op: Equal rhs: (word.EmptyWord) spids: [14053] ) (assign_pair lhs: (lhs_expr.LhsName name:genq spids:[14055]) op: Equal rhs: (word.EmptyWord) spids: [14055] ) ] spids: [14053] ) (command.ForEach iter_name: file iter_words: [{($ VSub_DollarName '$optfiles')}] do_arg_iter: F body: (command.DoGroup children: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:genf spids:[14070]) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [ (command.Pipeline children: [ (C {(basename)} {(DQ ($ VSub_DollarName '$file'))}) (C {(sed)} {(SQ <'s/.opt$/.gen/'>)}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [14071 14085] ) } spids: [14070] ) ] spids: [14070] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:gens spids:[14088]) op: Equal rhs: {(DQ ($ VSub_DollarName '$gens') (' ') ($ VSub_DollarName '$genf'))} spids: [14088] ) ] spids: [14088] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:genq spids:[14096]) op: Equal rhs: { (DQ ($ VSub_DollarName '$genq') ($ VSub_DollarName '$nl') ($ VSub_DollarName '$genf') (': ') ($ VSub_DollarName '$srcdir') ('/Build.sh ') ($ VSub_DollarName '$srcdir') (/) ($ VSub_DollarName '$file') ('\n') ('\t\t\tsrcfile=') ($ VSub_DollarName '$srcdir') (/) ($ VSub_DollarName '$file') ('; BUILDSH_RUN_GENOPT=1; . ') ($ VSub_DollarName '$srcdir') (/Build.sh) ) } spids: [14096] ) ] spids: [14096] ) ] spids: [14067 14118] ) spids: [14063 14065] ) (command.SimpleCommand words: [{(cat)}] redirects: [ (redir.Redir op: <Redir_Great '>'> fd: 16777215 arg_word: {(Makefrag.inc)} ) (redir.HereDoc op: <Redir_DLess '<<'> fd: 16777215 here_begin: {(EOF)} here_end_span_id: 14235 stdin_parts: [ ('# Makefile fragment for building mksh ') ($ VSub_DollarName '$dstversion') ('\n') ('\n') ('PROG=\t\t') ($ VSub_DollarName '$mkshexe') ('\n') ('MAN=\t\tmksh.1\n') ('SRCS=\t\t') ($ VSub_DollarName '$SRCS') ('\n') ('SRCS_FP=\t') ($ VSub_DollarName '$files') ('\n') ('OBJS_BP=\t') ($ VSub_DollarName '$objs') ('\n') ('INDSRCS=\t') ($ VSub_DollarName '$extras') ('\n') ('NONSRCS_INST=\tdot.mkshrc ') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('(MAN)\n') ('NONSRCS_NOINST=\tBuild.sh Makefile Rebuild.sh check.pl check.t test.sh\n') ('CC=\t\t') ($ VSub_DollarName '$CC') ('\n') ('CFLAGS=\t\t') ($ VSub_DollarName '$CFLAGS') ('\n') ('CPPFLAGS=\t') ($ VSub_DollarName '$CPPFLAGS') ('\n') ('LDFLAGS=\t') ($ VSub_DollarName '$LDFLAGS') ('\n') ('LIBS=\t\t') ($ VSub_DollarName '$LIBS') ('\n') ('\n') ('.depend ') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('(OBJS_BP):') ($ VSub_DollarName '$gens') ($ VSub_DollarName '$genq') ('\n') ('\n') ('# not BSD make only:\n') ('#VPATH=\t\t') ($ VSub_DollarName '$srcdir') ('\n') ('#all: ') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('(PROG)\n') ('#') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('(PROG): ') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('(OBJS_BP)\n') ('#\t') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('(CC) ') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('(CFLAGS) ') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('(LDFLAGS) -o ') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('@ ') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('(OBJS_BP) ') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('(LIBS)\n') ('#') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('(OBJS_BP): ') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('(SRCS_FP) ') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('(NONSRCS)\n') ('#.c.o:\n') ('#\t') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('(CC) ') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('(CFLAGS) ') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('(CPPFLAGS) -c ') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('<\n') ('\n') ('# for all make variants:\n') ('#REGRESS_FLAGS=\t-f\n') ('#regress:\n') ('#\t./test.sh ') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('(REGRESS_FLAGS)\n') ('check_categories=') ($ VSub_DollarName '$check_categories') ('\n') ('\n') ('# for BSD make only:\n') ('#.PATH: ') ($ VSub_DollarName '$srcdir') ('\n') ('#.include <bsd.prog.mk>\n') ] ) ] ) (C {($ VSub_DollarName '$e')}) (C {($ VSub_DollarName '$e')} {(Generated)} {(Makefrag.inc)} {(successfully.)}) (command.ControlFlow token:<ControlFlow_Exit exit> arg_word:{(0)}) ] spids: [16777215 14027] ) ] spids: [16777215 14253] ) (command.ForEach iter_name: file iter_words: [{($ VSub_DollarName '$optfiles')}] do_arg_iter: F body: (command.DoGroup children: [ (C {($ VSub_DollarName '$e')} {(DQ ("+ Running genopt on '") ($ VSub_DollarName '$file') ("'..."))} ) (command.AndOr ops: [Op_DPipe] children: [ (C {(do_genopt)} {(DQ ($ VSub_DollarName '$srcdir') (/) ($ VSub_DollarName '$file'))}) (command.ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] ) ] spids: [14264 14290] ) spids: [14260 14262] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {($ VSub_DollarName '$cm')} {(Lit_Other '=')} {(combine)}) terminator: <Op_Semi ';'> ) ] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:objs spids:[14306]) op: Equal rhs: {(DQ ('-o ') ($ VSub_DollarName '$mkshexe'))} spids: [14306] ) ] spids: [14306] ) (command.ForEach iter_name: file iter_words: [{($ VSub_DollarName '$SRCS')}] do_arg_iter: F body: (command.DoGroup children: [ (command.AndOr ops: [Op_DPipe] children: [ (C {(test)} {(-f)} {($ VSub_DollarName '$file')}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:file spids:[14333]) op: Equal rhs: {($ VSub_DollarName '$srcdir') (/) ($ VSub_DollarName '$file')} spids: [14333] ) ] spids: [14333] ) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:objs spids:[14339]) op: Equal rhs: {(DQ ($ VSub_DollarName '$objs') (' ') ($ VSub_DollarName '$file'))} spids: [14339] ) ] spids: [14339] ) ] spids: [14322 14347] ) spids: [14318 14320] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:emitbc spids:[14350]) op: Equal rhs: {(DQ ('-fwhole-program --combine'))} spids: [14350] ) ] spids: [14350] ) (C {(v)} { (DQ ($ VSub_DollarName '$CC') (' ') ($ VSub_DollarName '$CFLAGS') (' ') ($ VSub_DollarName '$CPPFLAGS') (' ') ($ VSub_DollarName '$LDFLAGS') (' ') ($ VSub_DollarName '$emitbc') (' ') ($ VSub_DollarName '$objs') (' ') ($ VSub_DollarName '$LIBS') (' ') ($ VSub_DollarName '$ccpr') ) } ) ] spids: [16777215 14303] ) (if_arm cond: [ (command.Sentence child: (C {(test)} {(1)} {(Lit_Other '=')} {($ VSub_DollarName '$pm')}) terminator: <Op_Semi ';'> ) ] action: [ (command.ForEach iter_name: file iter_words: [{($ VSub_DollarName '$SRCS')}] do_arg_iter: F body: (command.DoGroup children: [ (command.AndOr ops: [Op_DPipe] children: [ (C {(test)} {(-f)} {($ VSub_DollarName '$file')}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:file spids:[14410]) op: Equal rhs: {($ VSub_DollarName '$srcdir') (/) ($ VSub_DollarName '$file')} spids: [14410] ) ] spids: [14410] ) ] ) (command.Sentence child: (C {(v)} { (DQ ($ VSub_DollarName '$CC') (' ') ($ VSub_DollarName '$CFLAGS') (' ') ($ VSub_DollarName '$CPPFLAGS') (' ') ($ VSub_DollarName '$emitbc') (' ') ($ VSub_DollarName '$file') ) } ) terminator: <Op_Amp '&'> ) ] spids: [14399 14433] ) spids: [14395 14397] ) (C {(wait)}) ] spids: [14376 14387] ) ] else_action: [ (command.ForEach iter_name: file iter_words: [{($ VSub_DollarName '$SRCS')}] do_arg_iter: F body: (command.DoGroup children: [ (command.AndOr ops: [Op_DAmp] children: [ (C {(test)} {($ VSub_DollarName '$cm')} {(Lit_Other '=')} {(dragonegg)}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:op spids:[14465]) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [ (command.Pipeline children: [ (C {(echo)} {(x) (DQ ($ VSub_DollarName '$file'))}) (C {(sed)} {(SQ <'s/^x\\(.*\\)\\.c$/\\1./'>)}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [14466 14481] ) } spids: [14465] ) ] spids: [14465] ) ] ) (command.AndOr ops: [Op_DPipe] children: [ (C {(test)} {(-f)} {($ VSub_DollarName '$file')}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:file spids:[14492]) op: Equal rhs: {($ VSub_DollarName '$srcdir') (/) ($ VSub_DollarName '$file')} spids: [14492] ) ] spids: [14492] ) ] ) (command.AndOr ops: [Op_DPipe] children: [ (C {(v)} { (DQ ($ VSub_DollarName '$CC') (' ') ($ VSub_DollarName '$CFLAGS') (' ') ($ VSub_DollarName '$CPPFLAGS') (' ') ($ VSub_DollarName '$emitbc') (' ') ($ VSub_DollarName '$file') ) } ) (command.ControlFlow token: <ControlFlow_Exit exit> arg_word: {(1)} ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {($ VSub_DollarName '$cm')} {(Lit_Other '=')} {(dragonegg)}) terminator: <Op_Semi ';'> ) ] action: [ (C {(v)} {(DQ ('mv ') (${ VSub_Name op) ('s ') (${ VSub_Name op) (ll))}) (command.AndOr ops: [Op_DPipe] children: [ (C {(v)} {(DQ ('llvm-as ') (${ VSub_Name op) (ll))}) (command.ControlFlow token: <ControlFlow_Exit exit> arg_word: {(1)} ) ] ) ] spids: [16777215 14530] ) ] spids: [16777215 14565] ) ] spids: [14450 14568] ) spids: [14446 14448] ) ] spids: [14438 14570] ) (command.Case to_match: {($ VSub_DollarName '$cm')} arms: [ (case_arm pat_list: [{(dragonegg)} {(llvm)}] action: [ (C {(rmf)} {($ VSub_DollarName '$tfn') (.s)}) (C {(v)} { (DQ ('llvm-link -o - ') ($ VSub_DollarName '$objs') (' | opt ') ($ VSub_DollarName '$optflags') (' | llc -o ') ($ VSub_DollarName '$tfn') (.s) ) } ) ] spids: [14578 14581 14603 16777215] ) ] spids: [14572 14576 14605] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:tcfn spids:[14607]) op: Equal rhs: {($ VSub_DollarName '$mkshexe')} spids: [14607] ) ] spids: [14607] ) (command.AndOr ops: [Op_DPipe] children: [ (C {(test)} {($ VSub_DollarName '$cm')} {(Lit_Other '=')} {(combine)}) (C {(v)} { (DQ ($ VSub_DollarName '$CC') (' ') ($ VSub_DollarName '$CFLAGS') (' ') ($ VSub_DollarName '$LDFLAGS') (' -o ') ($ VSub_DollarName '$tcfn') (' ') ($ VSub_DollarName '$lobjs') (' ') ($ VSub_DollarName '$LIBS') (' ') ($ VSub_DollarName '$ccpr') ) } ) ] ) (command.AndOr ops: [Op_DPipe] children: [ (C {(test)} {(-f)} {($ VSub_DollarName '$tcfn')}) (command.ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] ) (command.AndOr ops: [Op_DPipe Op_DPipe] children: [ (C {(test)} {(1)} {(Lit_Other '=')} {($ VSub_DollarName '$r')}) (C {(v)} { (DQ ($ VSub_DollarName '$NROFF') (" -mdoc <'") ($ VSub_DollarName '$srcdir') ("/mksh.1' >") ($ VSub_DollarName '$tfn') (.cat1) ) } ) (C {(rmf)} {($ VSub_DollarName '$tfn') (.cat1)}) ] ) (command.AndOr ops: [Op_DAmp] children: [ (C {(test)} {(0)} {(Lit_Other '=')} {($ VSub_DollarName '$eq')}) (C {(v)} {($ VSub_DollarName '$SIZE')} {($ VSub_DollarName '$tcfn')}) ] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:i spids:[14696]) op: Equal rhs: {(install)} spids: [14696] ) ] spids: [14696] ) (command.AndOr ops: [Op_DAmp] children: [ (C {(test)} {(-f)} {(/usr/ucb/) ($ VSub_DollarName '$i')}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:i spids:[14708]) op: Equal rhs: {(/usr/ucb/) ($ VSub_DollarName '$i')} spids: [14708] ) ] spids: [14708] ) ] ) (command.AndOr ops: [Op_DAmp] children: [ (C {(test)} {(1)} {(Lit_Other '=')} {($ VSub_DollarName '$eq')}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:e spids:[14722]) op: Equal rhs: {(Lit_Other ':')} spids: [14722] ) ] spids: [14722] ) ] ) (C {($ VSub_DollarName '$e')}) (C {($ VSub_DollarName '$e')} {(Installing)} {(the)} {(shell) (Lit_Other ':')}) (C {($ VSub_DollarName '$e')} { (DQ ('# ') ($ VSub_DollarName '$i') (' -c -s -o root -g bin -m 555 ') ($ VSub_DollarName '$tfn') (' /bin/') ($ VSub_DollarName '$tfn') ) } ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {($ VSub_DollarName '$legacy')} {(Lit_Other '=')} {(0)}) terminator: <Op_Semi ';'> ) ] action: [ (C {($ VSub_DollarName '$e')} { (DQ ('# grep -x /bin/') ($ VSub_DollarName '$tfn') (' /etc/shells >/dev/null || echo /bin/') ($ VSub_DollarName '$tfn') (' >>/etc/shells') ) } ) (C {($ VSub_DollarName '$e')} { (DQ ('# ') ($ VSub_DollarName '$i') (' -c -o root -g bin -m 444 dot.mkshrc /usr/share/doc/mksh/examples/') ) } ) ] spids: [16777215 14758] ) ] spids: [16777215 14780] ) (C {($ VSub_DollarName '$e')}) (C {($ VSub_DollarName '$e')} {(Installing)} {(the)} {(manual) (Lit_Other ':')}) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {(-f)} {($ VSub_DollarName '$tfn') (.cat1)}) terminator: <Op_Semi ';'> ) ] action: [ (C {($ VSub_DollarName '$e')} { (DQ ('# ') ($ VSub_DollarName '$i') (' -c -o root -g bin -m 444 ') ($ VSub_DollarName '$tfn') (.cat1) ) } {(DQ (/usr/share/man/cat1/) ($ VSub_DollarName '$tfn') (.0))} ) (C {($ VSub_DollarName '$e')} {(or)}) ] spids: [16777215 14803] ) ] spids: [16777215 14829] ) (C {($ VSub_DollarName '$e')} { (DQ ('# ') ($ VSub_DollarName '$i') (' -c -o root -g bin -m 444 ') ($ VSub_DollarName '$tfn') ('.1 /usr/share/man/man1/') ($ VSub_DollarName '$tfn') (.1) ) } ) (C {($ VSub_DollarName '$e')}) (C {($ VSub_DollarName '$e')} {(Run)} {(the)} {(regression)} {(test)} {(suite) (Lit_Other ':')} {(./test.sh)} ) (C {($ VSub_DollarName '$e')} {(Please)} {(also)} {(read)} {(the)} {(sample)} {(file)} {(dot.mkshrc)} {(and)} {(the)} {(fine)} {(manual.)} ) (command.ControlFlow token:<ControlFlow_Exit exit> arg_word:{(0)}) (command.SimpleCommand words: [{(Lit_Other ':')}] redirects: [ (redir.HereDoc op: <Redir_DLess '<<'> fd: 16777215 here_begin: {(SQ <EOD>)} here_end_span_id: 14973 stdin_parts: [ ('\n') ('=== Environment used ===\n') ('\n') ('==== build environment ====\n') ('AWK\t\t\t\tdefault: awk\n') ('CC\t\t\t\tdefault: cc\n') ('CFLAGS\t\t\t\tif empty, defaults to -xO2 or +O2\n') ('\t\t\t\tor -O3 -qstrict or -O2, per compiler\n') ('CPPFLAGS\t\t\tdefault empty\n') ('LDFLAGS\t\t\t\tdefault empty; added before sources\n') ("LDSTATIC\t\t\tset this to '-static'; default unset\n") ('LIBS\t\t\t\tdefault empty; added after sources\n') ('\t\t\t\t[Interix] default: -lcrypt (XXX still needed?)\n') ('NOWARN\t\t\t\t-Wno-error or similar\n') ('NROFF\t\t\t\tdefault: nroff\n') ('TARGET_OS\t\t\tdefault: $(uname -s || uname)\n') ('TARGET_OSREV\t\t\t[QNX] default: $(uname -r)\n') ('\n') ('==== feature selectors ====\n') ('USE_PRINTF_BUILTIN\t\t1 to include (unsupported) printf(1) as builtin\n') ('===== general format =====\n') ('HAVE_STRLEN\t\t\tac_test\n') ('HAVE_STRING_H\t\t\tac_header\n') ('HAVE_CAN_FSTACKPROTECTORALL\tac_flags\n') ('\n') ('==== cpp definitions ====\n') ('DEBUG\t\t\t\tdont use in production, wants gcc, implies:\n') ('DEBUG_LEAKS\t\t\tenable freeing resources before exiting\n') ('MKSHRC_PATH\t\t\t"~/.mkshrc" (do not change)\n') ('MKSH_A4PB\t\t\tforce use of arc4random_pushb\n') ('MKSH_ASSUME_UTF8\t\t(0=disabled, 1=enabled; default: unset)\n') ('MKSH_BINSHPOSIX\t\t\tif */sh or */-sh, enable set -o posix\n') ('MKSH_BINSHREDUCED\t\tif */sh or */-sh, enable set -o sh\n') ('MKSH_CLRTOEOL_STRING\t\t"\\033[K"\n') ('MKSH_CLS_STRING\t\t\t"\\033[;H\\033[J"\n') ('MKSH_CONSERVATIVE_FDS\t\tfd 0-9 for scripts, shell only up to 31\n') ('MKSH_DEFAULT_EXECSHELL\t\t"/bin/sh" (do not change)\n') ('MKSH_DEFAULT_PROFILEDIR\t\t"/etc" (do not change)\n') ('MKSH_DEFAULT_TMPDIR\t\t"/tmp" (do not change)\n') ('MKSH_DISABLE_DEPRECATED\t\tdisable code paths scheduled for later removal\n') ('MKSH_DISABLE_EXPERIMENTAL\tdisable code not yet comfy for (LTS) snapshots\n') ('MKSH_DISABLE_TTY_WARNING\tshut up warning about ctty if OS cant be fixed\n') ('MKSH_DONT_EMIT_IDSTRING\t\tomit RCS IDs from binary\n') ('MKSH_MIDNIGHTBSD01ASH_COMPAT\tset -o sh: additional compatibility quirk\n') ('MKSH_NOPROSPECTOFWORK\t\tdisable jobs, co-processes, etc. (do not use)\n') ('MKSH_NOPWNAM\t\t\tskip PAM calls, for -static on glibc or Solaris\n') ('MKSH_NO_CMDLINE_EDITING\t\tdisable command line editing code entirely\n') ('MKSH_NO_DEPRECATED_WARNING\tomit warning when deprecated stuff is run\n') ('MKSH_NO_LIMITS\t\t\tomit ulimit code\n') ('MKSH_NO_SIGSETJMP\t\tdefine if sigsetjmp is broken or not available\n') ('MKSH_NO_SIGSUSPEND\t\tuse sigprocmask+pause instead of sigsuspend\n') ('MKSH_SMALL\t\t\tomit some code, optimise hard for size (slower)\n') ('MKSH_SMALL_BUT_FAST\t\tdisable some hard-for-size optim. (modern sys.)\n') ('MKSH_S_NOVI=1\t\t\tdisable Vi editing mode (default if MKSH_SMALL)\n') ("MKSH_TYPEDEF_SIG_ATOMIC_T\tdefine to e.g. 'int' if sig_atomic_t is missing\n") ("MKSH_TYPEDEF_SSIZE_T\t\tdefine to e.g. 'long' if your OS has no ssize_t\n") ('MKSH_UNEMPLOYED\t\t\tdisable job control (but not jobs/co-processes)\n') ('\n') ('=== generic installation instructions ===\n') ('\n') ('Set CC and possibly CFLAGS, CPPFLAGS, LDFLAGS, LIBS. If cross-compiling,\n') ('also set TARGET_OS. To disable tests, set e.g. HAVE_STRLCPY=0; to enable\n') ('them, set to a value other than 0 or 1. Ensure /bin/ed is installed. For\n') ('MKSH_SMALL but with Vi mode, add -DMKSH_S_NOVI=0 to CPPFLAGS as well.\n') ('\n') ('Normally, the following command is what you want to run, then:\n') ('$ (sh Build.sh -r -c lto && ./test.sh -f) 2>&1 | tee log\n') ('\n') ('Copy dot.mkshrc to /etc/skel/.mkshrc; install mksh into $prefix/bin; or\n') ('/bin; install the manpage, if omitting the -r flag a catmanpage is made\n') ('using $NROFF. Consider using a forward script as /etc/skel/.mkshrc like\n') ('http://anonscm.debian.org/cgit/collab-maint/mksh.git/plain/debian/.mkshrc\n') ('and put dot.mkshrc as /etc/mkshrc so users need not keep up their HOME.\n') ('\n') ('You may also want to install the lksh binary (also as /bin/sh) built by:\n') ('$ CPPFLAGS="$CPPFLAGS -DMKSH_BINSHPOSIX" sh Build.sh -L -r -c lto\n') ('\n') ] ) ] ) ] )