(command.CommandList children: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<Id.Lit_LBracket '['>} {(DQ ($ Id.VSub_Number '$1'))} {<Id.Lit_Equals '='>} {(DQ <-p>)} {<Id.Lit_RBracket ']'>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Sentence child: (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:with_patchlevel) op: assign_op.Equal rhs: {<1>} spids: [52] ) ] ) terminator: <Id.Op_Semi _> ) (command.Sentence child:(C {<shift>}) terminator:<Id.Op_Semi _>) ] spids: [31 49] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:compiler) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Star '$*'))} spids: [63] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<Id.Lit_LBracket '['>} {(braced_var_sub token:<Id.VSub_Name compiler> prefix_op:(Id.VSub_Pound))} {<-eq>} {<0>} {<Id.Lit_RBracket ']'>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<echo>} {(DQ <'Error: No compiler specified.'>)}) (C {<printf>} { (DQ <'Usage:'> <Id.Lit_BadBackslash '\\'> <n> <Id.Lit_BadBackslash '\\'> <t> ($ Id.VSub_Number '$0') <' <gcc-command>'> <Id.Lit_BadBackslash '\\'> <n> ) } ) (command.ControlFlow token:<Id.ControlFlow_Exit exit> arg_word:{<1>}) ] spids: [69 85] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:MAJOR) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_DollarParen '$('> child: (command.Pipeline children: [ (C {<echo>} {<__GNUC__>}) (C {($ Id.VSub_DollarName '$compiler')} {<-E>} {<-x>} {<c>} {<->}) (C {<tail>} {<-n>} {<1>}) ] negated: F ) ) } spids: [117] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:MINOR) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_DollarParen '$('> child: (command.Pipeline children: [ (C {<echo>} {<__GNUC_MINOR__>}) (C {($ Id.VSub_DollarName '$compiler')} {<-E>} {<-x>} {<c>} {<->}) (C {<tail>} {<-n>} {<1>}) ] negated: F ) ) } spids: [144] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<Id.Lit_LBracket '['>} {(DQ <x> ($ Id.VSub_DollarName '$with_patchlevel'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {(DQ <x>)} {<Id.Lit_RBracket ']'>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:PATCHLEVEL) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_DollarParen '$('> child: (command.Pipeline children: [ (C {<echo>} {<__GNUC_PATCHLEVEL__>}) (C {($ Id.VSub_DollarName '$compiler')} {<-E>} {<-x>} {<c>} {<->}) (C {<tail>} {<-n>} {<1>}) ] negated: F ) ) } spids: [194] ) ] ) (C {<printf>} {(DQ <'%02d%02d%02d'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\\'>) <n>)} {($ Id.VSub_DollarName '$MAJOR')} {($ Id.VSub_DollarName '$MINOR')} {($ Id.VSub_DollarName '$PATCHLEVEL')} ) ] spids: [171 191] ) ] else_action: [ (C {<printf>} {(DQ <'%02d%02d'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\\'>) <n>)} {($ Id.VSub_DollarName '$MAJOR')} {($ Id.VSub_DollarName '$MINOR')} ) ] ) ] )