guile-user
[Top][All Lists]
Advanced

[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/




reply via email to

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