(command.AndOr
  ops: [Id.Op_DAmp]
  children: [
    (command.Pipeline
      children: [
        (command.Simple
          words: [{<cat>}]
          redirects: [
            (redir.HereDoc
              op: <Id.Redir_DLess '<<'>
              fd: -1
              here_begin: {(DQ <END>)}
              here_end_span_id: 63
              stdin_parts: [
                <'int main(void)\n'>
                <'{\n'>
                <'#if defined(__arm__) || defined(__aarch64__)\n'>
                <'\t/*\n'>
                <'\t * Not related to asm goto, but used by jump label\n'>
                <'\t * and broken on some ARM GCC versions (see GCC Bug 48637).\n'>
                <'\t */\n'>
                <'\tstatic struct { int dummy; int state; } tp;\n'>
                <'\tasm (".long %c0" :: "i" (&tp.state));\n'>
                <'#endif\n'>
                <'\n'>
                <'entry:\n'>
                <'\tasm goto ("" :::: entry);\n'>
                <'\treturn 0;\n'>
                <'}\n'>
              ]
            )
          ]
        )
        (command.Simple
          words: [{($ Id.VSub_At '$@')} {<-x>} {<c>} {<->} {<-c>} {<-o>} {</dev/null>}]
          redirects: [
            (redir.Redir op:<Id.Redir_Great '>'> fd:-1 arg_word:{</dev/null>})
            (redir.Redir op:<Id.Redir_GreatAnd '2>&'> fd:2 arg_word:{<1>})
          ]
        )
      ]
      negated: F
    )
    (C {<echo>} {(DQ <y>)})
  ]
)