'Dump the function def of a macro or call block.'

def macro_body(self, node, frame, children=None):

    frame = self.function_scoping(node, frame, children)
    frame.require_output_check = False
    args = frame.arguments
    if ('loop' in frame.identifiers.declared):
        args = (args + ['l_loop=l_loop'])
    self.writeline(('def    macro(%s):' % ',    '.join(args)), node)
    self.indent()
    self.buffer(frame)
    self.pull_locals(frame)
    self.blockvisit(node.body, frame)
    self.return_buffer_contents(frame)
    self.outdent()
    return frame
