guile-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Problem compiling related to block-growth-factor fluid


From: rixed
Subject: Problem compiling related to block-growth-factor fluid
Date: Mon, 21 Nov 2011 10:26:07 +0100
User-agent: Mutt/1.5.20 (2009-06-14)

Hello list !

I'm using guile 2.0.2.4-17047 in production and noticed a strange
problem when my program try to compile some expression ; namely,
this exception:

In language/glil/spec.scm:
  32: 4 [compile-asm # # ()]
In language/glil/compile-assembly.scm:
 275: 3 [compile-assembly #]
In srfi/srfi-1.scm:
 445: 2 [fold #<procedure walk (x store)> #<vlist ()> ...]
 445: 1 [fold #<procedure walk (x store)> #<vlist ()> ...]
In ice-9/vlist.scm:
 422: 0 [vhash-cons 340277174624079928635746076935438991360 2 ...]

ice-9/vlist.scm:422:20: In procedure vhash-cons:
ice-9/vlist.scm:422:20: In procedure *: Wrong type argument in position 1: #f

It works alright when I compile the same expression from the REPL,
though, so there is probably something wrong with my program in the
first place. But on my dev machine (where I use a guile from the
stable-2 branch) it always worked.

This seams to be due to the block-growth-factor fluid in vlist.scm,
which for some reason has not been set (to 2 by default), for if I
change the guilty fluid-ref by:

(or (fluid-ref block-growth-factor) 2)

then all seams right.
block-cons being a macro I might need to import block-growth-factor
somewhere?

I looked in the git log of stable-2.0 for a bug regarding this but was
unable to find it. So I ask here in the hope that someone remember a
patch that might have fixed this issue, so that I might have a chance
to patch some scm files and get rid of the issue without the trouble
if packaging a more recent version of guile?

Also, after I changed vlist.scm, I noticed that whenever I try to
compile something I got this:

;;; note: source file /usr/share/guile/2.0/ice-9/vlist.scm
;;;       newer than compiled /usr/lib/guile/2.0/ccache/ice-9/vlist.go
;;; note: auto-compilation is enabled, set GUILE_AUTO_COMPILE=0
;;;       or pass the --no-auto-compile argument to disable.
;;; compiling /usr/share/guile/2.0/ice-9/vlist.scm
;;; WARNING: compilation of /usr/share/guile/2.0/ice-9/vlist.scm failed:
;;; ERROR: no such language tree-il

Google know about this particular problem [1], apparently related to the
fact that the compilation process requires the very file it's trying to
compile, but I couldn't find a solution to this.  But if I'm about to
patch stdlib scheme files I also need to deal with this problem, so any
idea about this would be welcome as well.


[1] http://lists.gnu.org/archive/html/guile-devel/2009-12/msg00033.html




reply via email to

[Prev in Thread] Current Thread [Next in Thread]