(command.CommandList
  children: [
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:tmpfiles)
          op: assign_op.Equal
          rhs: {(DQ )}
          spids: [4]
        )
      ]
    )
    (C {(trap)} {(SQ (Token id:Id.Lit_Chars val:'rm -fr $tmpfiles' span_id:11))} {(1)} {(2)} {(3)} {(15)})
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:tmpfiles)
          op: assign_op.Equal
          rhs: {(DQ ($ Id.VSub_DollarName '$tmpfiles') (' t-vprintf-posix.tmp t-vprintf-posix.out'))}
          spids: [23]
        )
      ]
    )
    (command.AndOr
      ops: [Id.Op_DPipe]
      children: [
        (command.Simple
          words: [{(./test-vprintf-posix) (${ Id.VSub_Name EXEEXT)}]
          redirects: [
            (redir.Redir
              op: (Token id:Id.Redir_Great val:'>' span_id:34)
              fd: -1
              arg_word: {(t-vprintf-posix.tmp)}
            )
          ]
        )
        (command.ControlFlow
          token: (Token id:Id.ControlFlow_Exit val:exit span_id:40)
          arg_word: {(1)}
        )
      ]
    )
    (command.AndOr
      ops: [Id.Op_DPipe]
      children: [
        (command.Simple
          words: [{(tr)} {(-d)} {(SQ (Token id:Id.Lit_Chars val:'\\r' span_id:52))}]
          redirects: [
            (redir.Redir
              op: (Token id:Id.Redir_Less val:'<' span_id:55)
              fd: -1
              arg_word: {(t-vprintf-posix.tmp)}
            )
            (redir.Redir
              op: (Token id:Id.Redir_Great val:'>' span_id:59)
              fd: -1
              arg_word: {(t-vprintf-posix.out)}
            )
          ]
          more_env: [(env_pair name:LC_ALL val:{(C)} spids:[44])]
        )
        (command.ControlFlow
          token: (Token id:Id.ControlFlow_Exit val:exit span_id:65)
          arg_word: {(1)}
        )
      ]
    )
    (C {(Id.Lit_Other ':')} 
      {
        (braced_var_sub
          token: (Token id:Id.VSub_Name val:DIFF span_id:73)
          suffix_op: (suffix_op.Unary op_id:Id.VTest_Equals arg_word:{(diff)})
        )
      }
    )
    (C {(${ Id.VSub_Name DIFF)} {(DQ (${ Id.VSub_Name srcdir) (/test-printf-posix.output))} 
      {(t-vprintf-posix.out)}
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:result)
          op: assign_op.Equal
          rhs: {($ Id.VSub_QMark '$?')}
          spids: [91]
        )
      ]
    )
    (C {(rm)} {(-fr)} {($ Id.VSub_DollarName '$tmpfiles')})
    (command.ControlFlow
      token: (Token id:Id.ControlFlow_Exit val:exit span_id:102)
      arg_word: {($ Id.VSub_DollarName '$result')}
    )
  ]
)