unofficial mirror of help-gnu-emacs@gnu.org
 help / color / mirror / Atom feed
* Splitting emacs source files without getting 'reference to free variable' errors
@ 2013-03-23 15:57 Joe Riel
  0 siblings, 0 replies; 2+ messages in thread
From: Joe Riel @ 2013-03-23 15:57 UTC (permalink / raw)
  To: Help GNU Emacs

Is there a sane way to split the source of an elisp file
while avoiding the 'reference to free variable' warnings
when byte-compiling?

The problem arises when a variable defined in one file
is used in another.   How does one avoid those errors?
I have half a dozen source files that are all required
by one package.  A variable may be used in several files
(generally it is used mainly in one file, which is where
it is defined (with defvar), but, must be used in another.
I've tried adding 

(eval-when-compile
  (require 'other-source-file))

to avoid the error; that sort of works, but not
when two files each uses a variable defined in the other.

There has to be a better way.


-- 
Joe Riel




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

* Re: Splitting emacs source files without getting 'reference to free variable' errors
       [not found] <mailman.22714.1364055474.855.help-gnu-emacs@gnu.org>
@ 2013-03-23 16:20 ` Pascal J. Bourguignon
  0 siblings, 0 replies; 2+ messages in thread
From: Pascal J. Bourguignon @ 2013-03-23 16:20 UTC (permalink / raw)
  To: help-gnu-emacs

Joe Riel <jriel@maplesoft.com> writes:

> Is there a sane way to split the source of an elisp file
> while avoiding the 'reference to free variable' warnings
> when byte-compiling?
>
> The problem arises when a variable defined in one file
> is used in another.   How does one avoid those errors?
> I have half a dozen source files that are all required
> by one package.  A variable may be used in several files
> (generally it is used mainly in one file, which is where
> it is defined (with defvar), but, must be used in another.
> I've tried adding 
>
> (eval-when-compile
>   (require 'other-source-file))
>
> to avoid the error; that sort of works, but not
> when two files each uses a variable defined in the other.
>
> There has to be a better way.

See the other thread.

-- 
__Pascal Bourguignon__                     http://www.informatimago.com/
A bad day in () is better than a good day in {}.


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

end of thread, other threads:[~2013-03-23 16:20 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <mailman.22714.1364055474.855.help-gnu-emacs@gnu.org>
2013-03-23 16:20 ` Splitting emacs source files without getting 'reference to free variable' errors Pascal J. Bourguignon
2013-03-23 15:57 Joe Riel

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).