GNU bug report logs - #32160
auto compile fails to recompile when included source files change

Previous Next

Package: guile;

Reported by: Arun Isaac <arunisaac <at> systemreboot.net>

Date: Sun, 15 Jul 2018 02:52:01 UTC

Severity: normal

Full log


View this message in rfc822 format

From: Arun Isaac <arunisaac <at> systemreboot.net>
To: 32160 <at> debbugs.gnu.org
Subject: bug#32160: auto compile fails to recompile when included source files change
Date: Sun, 15 Jul 2018 07:49:58 +0530
Guile's auto compile fails to recompile when included source files
change.

For example, I have two source files -- foo.scm and bar.scm. foo.scm
includes bar.scm using `include'. When I run foo.scm for the first time,
it is auto compiled and run correctly. But, if I modify bar.scm and run
foo.scm again, foo.scm is not rebuilt and the old version is run.

Here is a concrete example of what I mean.

$ cat foo.scm
(include "bar.scm")

$ cat bar.scm
(display "old")
(newline)

$ guile -s foo.scm
;;; note: source file /tmp/test/foo.scm
;;;       newer than compiled /home/arun/.cache/guile/ccache/2.2-LE-8-3.A/tmp/test/foo.scm.go
;;; note: auto-compilation is enabled, set GUILE_AUTO_COMPILE=0
;;;       or pass the --no-auto-compile argument to disable.
;;; compiling /tmp/test/foo.scm
;;; compiled /home/arun/.cache/guile/ccache/2.2-LE-8-3.A/tmp/test/foo.scm.go
old

$ sed -i 's/old/new/' bar.scm

$ cat bar.scm
(display "new")
(newline)

$ guile -s foo.scm
old

In the last step, guile still printed "old" without recompiling. It
should have recompiled and printed "new".




This bug report was last modified 6 years and 317 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.