[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Running files from command-line vs. load'ing them
From: |
Andy Wingo |
Subject: |
Re: Running files from command-line vs. load'ing them |
Date: |
Sun, 28 Dec 2008 11:59:05 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/23.0.60 (gnu/linux) |
Hi,
On Sat 27 Dec 2008 17:27, Daniel Kraft <address@hidden> writes:
> $ myguile -L .. program.scm
> ERROR: In procedure string-contains:
> ERROR: Wrong type argument in position 1 (expecting string): #<winder
> b7d6e360>
I think this means that your extension missed a GC reference somewhere,
and that a SCM that you have has been freed and replaced with a
"winder".
("Winders" are part of guile's dynamic-wind implementation and are not
normally exposed to scheme -- a pretty good indication that this is the
case.)
Probably what's happening is that GC runs at different times when
running from the command line, or when running with the repl loaded; or
that it has marked but not yet swept that cell; etc.
> As I understand it, all three calls above should (more or less) do the
> same thing.
Yep. But I think you'll find you forgot a GC reference. Check your SMOB
marking functions, or scm_gc_protect_object() calls for global
variables.
Cheers,
Andy
--
http://wingolog.org/