(command.CommandList
  children: [
    (command.Pipeline
      children: [
        (C {<echo>} {(DQ <'int foo(void) { char X[200]; return 3; }'>)})
        (command.Simple
          words: [
            {($ Id.VSub_Star '$*')}
            {<-S>}
            {<-x>}
            {<c>}
            {<-c>}
            {<-O0>}
            {<-mcmodel> <Id.Lit_Equals '='> <kernel>}
            {<-fstack-protector>}
            {<->}
            {<-o>}
            {<->}
          ]
          redirects: [(redir op:<Id.Redir_Great '2>'> loc:(redir_loc.Fd fd:2) arg:{<'/dev/null'>})]
          do_fork: T
        )
        (C {<grep>} {<-q>} {(DQ <'%gs'>)})
      ]
      negated: F
    )
    (command.If
      arms: [
        (if_arm
          cond: 
            (condition.Shell
              commands: [
                (command.Sentence
                  child: 
                    (C {<Id.Lit_LBracket '['>} {(DQ ($ Id.VSub_QMark '$?'))} {<-eq>} {(DQ <0>)} 
                      {<Id.Lit_RBracket ']'>}
                    )
                  terminator: <Id.Op_Semi _>
                )
              ]
            )
          action: [(C {<echo>} {<y>})]
          spids: [50 68]
        )
      ]
      else_action: [(C {<echo>} {<n>})]
    )
  ]
)