(command.CommandList children: [ (command.ShFunction name: check body: (BraceGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:file) op: assign_op.Equal rhs: {($ Id.VSub_Number '$1')} spids: [81] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:found) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (C {<egrep>} { (DQ <Id.Lit_BadBackslash '\\'> <.gnu> <Id.Lit_BadBackslash '\\'> <'.version.*'> ) } {($ Id.VSub_DollarName '$file')} ) ) } spids: [86] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$found'))}) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<echo>} {(DQ <'These section should not be in '> ($ Id.VSub_DollarName '$file') <':'>)} ) (C {<echo>} {(DQ ($ Id.VSub_DollarName '$found'))}) (command.ControlFlow token: <Id.ControlFlow_Exit exit> arg_word: {<1>} ) ] spids: [107 118] ) ] ) ] ) ) (C {<check>} {(DQ <no_version_test.stdout>)}) (command.ControlFlow token:<Id.ControlFlow_Exit exit> arg_word:{<0>}) ] )