all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* Conditional compilation to avoid "assignment to free variable"
@ 2008-09-24 19:46 Michael Hoffman
  2008-09-24 19:54 ` Joost Diepenmaat
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: Michael Hoffman @ 2008-09-24 19:46 UTC (permalink / raw)
  To: help-gnu-emacs

I use the same .emacs file on multiple systems, and each have various 
packages installed. There are various forms in my .emacs to only 
interact with these packages if they are actually installed:

(when (locate-library "auctex")
   (load "auctex.el" nil t t)
   (setq TeX-auto-save t))

When I byte-compile, however, I get a warning like this:

emacs.el:320:9:Warning: assignment to free variable `TeX-auto-save'

Is there a way to skip over that form at compile time if the library 
cannot be found? I tried various permutations of using 
eval-when-compile, but I still get the warning.

I suppose the other solution is to wrap the setq in a boundp check, but 
this seems silly as the result of the boundp check will be the same as 
the result of locate-library.

In this case, I may be able to use a custom variable instead but I am 
looking for a more general solution.


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2008-09-25  0:11 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-09-24 19:46 Conditional compilation to avoid "assignment to free variable" Michael Hoffman
2008-09-24 19:54 ` Joost Diepenmaat
2008-09-24 21:34 ` Chetan
2008-09-24 22:09 ` Glenn Morris
2008-09-25  0:11 ` Chetan

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.