Subject: Re: bug#20149: Cannot byte-compile 'undo-tree' since commit 801eda8a2

From: Vladimir Lomov <[email-masked]>
Date: Fri, 20 Mar 2015 16:16:45 +0800

Hello,
** Tassilo Horn [2015-03-20 08:46:34 +0100]:

> Vladimir Lomov <[email-masked]> writes:
> 
>> I was able to byte-compile 'undo-tree' package using Emacs from
>> commit f925fc93 but since that commit Emacs stops compilation with
>> message:
>>
>>   In undo-tree-update-menu-bar:
>>   undo-tree.el:1232:7:Warning: reference to free variable `undo-tree-mode'
>>   undo-tree.el:1481:1:Error: Symbol's function definition is void: undo-tree-make-node
>>
>> I don't think this is a problem of the package, because the next four
>> commits: 801eda8a2, a961dcedeb, b0743354e, 508049aa have some
>> trouble(s), so I wasn't able to compile Emacs. Below is terminal output
>> before the stop:
>>
>>   Loading /home/vladimir/works/projects/pkgbuild/emacs/src/emacs/lisp/select.el (source)...
>>   Loading
>> /home/vladimir/works/projects/pkgbuild/emacs/src/emacs/lisp/emacs-lisp/timer.el
>> (source)...
>>   Eager macro-expansion failure: (void-function cl-every)
>>   Eager macro-expansion failure: (void-function cl-every)
>>   Symbol's function definition is void: cl-every
> 
> This has already been reported as bug#20125, and it's already fixed.

I'm sorry, but you got me wrong. I wasn't concerned by this error
(bug#20125) and these messages:

  Eager macro-expansion failure: (void-function cl-every)
  Eager macro-expansion failure: (void-function cl-every)
  Symbol's function definition is void: cl-every

but with package 'undo-tree' and this message from Emacs:

  In undo-tree-update-menu-bar:
  undo-tree.el:1232:7:Warning: reference to free variable `undo-tree-mode'
  undo-tree.el:1481:1:Error: Symbol's function definition is void: undo-tree-make-node

I tracked down to the commit when Emacs was able to compile the
'undo-tree' package, this is commit f925fc93 but starting from next
commit, 801eda8a2, the package isn't byte-compiled. Actually, I wasn't
able to compile Emacs taking source from commit 801eda8a2 and next three
ones. 

> Could you please verify that compiling undo-tree works again with the
> current emacs git version?  If so, feel free to close this bug by
> replying to [email-masked].

I did fresh Emacs build (commit 395a76a) and I see the same message when
byte-compile 'undo-tree' package.
 
> Bye,
> Tassilo

---
WBR, Vladimir Lomov

-- 
"The rotter who simpers that he sees no difference between a five-dollar bill 
and a whip deserves to learn the difference on his own back -- as, I think, he 
will."
-- Francisco d'Anconia, in Ayn Rand's _Atlas Shrugged_