(command.CommandList
  children: [
    (C {<'../../src/protoc'>} {<--php_out> <Id.Lit_Equals '='> <.>} {<test.proto>} {<test_include.proto>})
    (C {<pushd>} {<'../ext/google/protobuf/'>})
    (C {<make>} {<clean>})
    (C {<set>} {<-e>})
    (command.AndOr
      ops: [Id.Op_DAmp Id.Op_DAmp]
      children: [
        (C {<phpize>})
        (C {<'./configure'>} {<--enable-debug>} {<Id.Lit_VarLike 'CFLAGS='> (SQ <'-g -O0'>)})
        (C {<make>})
      ]
    )
    (C {<popd>})
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:tests)
          op: assign_op.Equal
          rhs: 
            {
              (sh_array_literal
                left: <Id.Op_LParen _>
                words: [
                  {<array_test.php>}
                  {<encode_decode_test.php>}
                  {<generated_class_test.php>}
                  {<map_field_test.php>}
                ]
              )
            }
          spids: [53]
        )
      ]
    )
    (command.ForEach
      iter_name: t
      iter_words: [
        {
          (DQ 
            (braced_var_sub
              token: <Id.VSub_Name tests>
              bracket_op: (bracket_op.WholeArray op_id:Id.Lit_At)
            )
          )
        }
      ]
      do_arg_iter: F
      body: 
        (command.DoGroup
          children: [
            (C {<echo>} {(DQ <'****************************'>)})
            (C {<echo>} {(DQ <'* '> ($ Id.VSub_DollarName '$t'))})
            (C {<echo>} {(DQ <'****************************'>)})
            (C {<php>} 
              {<-dextension> <Id.Lit_Equals '='> <'../ext/google/protobuf/modules/protobuf.so'>} {(command_sub left_token:<Id.Left_Backtick '`'> child:(C {<which>} {<phpunit>}))} 
              {($ Id.VSub_DollarName '$t')}
            )
            (C {<echo>} {(DQ )})
          ]
        )
    )
    (C {<php>} {<-dextension> <Id.Lit_Equals '='> <'../ext/google/protobuf/modules/protobuf.so'>} 
      {<memory_leak_test.php>}
    )
    (command.Simple
      words: [
        {<valgrind>}
        {<--leak-check> <Id.Lit_Equals '='> <yes>}
        {<php>}
        {<-dextension> <Id.Lit_Equals '='> <'../ext/google/protobuf/modules/protobuf.so'>}
        {<memory_leak_test.php>}
      ]
      more_env: [(env_pair name:USE_ZEND_ALLOC val:{<0>} spids:[144])]
      do_fork: T
    )
  ]
)