public function push($content, $lineCount = null)
    {
        if ($lineCount === null) {
            $lineCount = substr_count($content, "\n");
        }

        if ($this->curBlock['buffer'] === null && count($this->stack) > 1) {
            // buffer is not initialized yet (the block has just been created)
            $this->stack[count($this->stack) - 2]['buffer'] .= (string)$content;
            $this->curBlock['buffer'] = '';
        } else {
            if (!isset($this->curBlock['buffer'])) {
                throw new CompilationException($this, 'The template has been closed too early, you probably have an extra block-closing tag somewhere');
            }
            // append current content to current block's buffer
            $this->curBlock['buffer'] .= (string)$content;
        }
        $this->line += $lineCount;
    }