[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Emacs snapshot: free variable warning
From: |
Dmitry Gutov |
Subject: |
Re: Emacs snapshot: free variable warning |
Date: |
Fri, 23 Nov 2012 17:37:43 +0400 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (windows-nt) |
Joost Kremers <joostkremers@yahoo.com> writes:
> Hi all,
>
> After a recent Emacs update (I'm following Damien Cassou's Emacs
> snapshot packages at <https://launchpad.net/~cassou/+archive/emacs>) one
> of my init files started giving me a free variable warning that I never
> got before:
>
> ```
> .emacs.d/mu4e-settings.el:Warning: reference to free variable
> `offlineimap-buffer-name'
> ```
>
> The warning results from a defadvice:
>
> ```
> (defadvice mu4e-quit (around jk-quit-offlineimap () activate)
> "Quit OfflineIMAP when quitting mu4e."
> (interactive)
> ad-do-it
> (signal-process (get-buffer-process (get-buffer offlineimap-buffer-name))
> 'SIGUSR2))
> ```
>
> If I comment out this defadvice, the warning goes away.
>
> Anyone know why I'm suddenly getting this warning? It's true that the
> variable hasn't been defined yet when the code is loaded, but I have a
> defun in the same file which also references this variable but doesn't
> produce any warning. Besides, I'm used to getting warnings like this
> when compiling code, but not when it's simply loaded...
>
> If it is intentional (and not some bug introduced with a recent change
> to Emacs) is there a way to code the defadvice so that I don't get the
> warning?
Same here with autopair on Emacs trunk, compiled by myself:
```
.emacs.d/elpa/autopair-20121120.2012/autopair.elc:Warning: reference to free
variable `autopair-mode'
```
in *Compile-Log* on startup.
Doesn't look like expected behavior.