(command.CommandList
  children: [
    (C {<Id.KW_Set set>} {<-o>} {<nounset>})
    (C {<Id.KW_Set set>} {<-o>} {<pipefail>})
    (C {<Id.KW_Set set>} {<-o>} {<errexit>})
    (C {<source>} {<build/common.sh>})
    (command.ShFunction
      name: grep-python
      body: 
        (command.BraceGroup
          children: [
            (command.Pipeline
              children: [
                (C {<find>} {($ Id.VSub_DollarName '$PY27')} {<-type>} {<f>})
                (C {<xargs>} {<grep>} {(DQ ($ Id.VSub_At '$@'))})
              ]
              negated: F
            )
          ]
        )
    )
    (command.ShFunction
      name: pp-vars
      body: 
        (command.BraceGroup
          children: [
            (command.Simple
              words: [{<gcc>} {<-E>} {<-dM>} {<->}]
              redirects: [
                (redir.Redir
                  op: <Id.Redir_Less '<'>
                  fd: -1
                  arg_word: {($ Id.VSub_DollarName '$PY27') </pyconfig.h>}
                )
              ]
            )
          ]
        )
    )
    (C {(DQ ($ Id.VSub_At '$@'))})
  ]
)