private function compileChildBlock(\Twig_Compiler $compiler, $key = null)
    {
        $name = $this->getAttribute('name');
        $parentName = $this->getAttribute('parent_name');
        $key = null !== $key ? ', '.$key : '';

        $compiler
            ->addDebugInfo($this)
            ->write('list($')->raw($name)->raw(', $')->raw($name)->raw('Children) = $this->block_')->raw($name)->raw('($context, $blocks')->raw($key)->raw(');')->raw("\n")
            ->write('$')->raw($parentName)->raw('Children[] = array(\'parent\' => $')->raw($parentName)->raw(', \'child\' => $')->raw($name)->raw(');')->raw("\n")
            ->write('$')->raw($parentName)->raw('Children = array_merge($')->raw($parentName)->raw('Children, $')->raw($name)->raw('Children);')->raw("\n")
        ;
    }