This is the mail archive of the guile@cygnus.com mailing list for the guile project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Calling Scheme from C and Garbage Collection


Hello

I'm using Guile from my C program, and I use scm_make_regexp to create a
regexp SCM object:

SCM r = scm_make_regexp(regex,
                        gh_list(gh_lookup("regexp/icase"),
                                SCM_UNDEFINED));

I get strange errors when I call scm_regexp_exec which makes me think that
the regexp got garbage collected somewhere:

ERROR: In procedure regexp-exec:
ERROR: Wrong type argument in position 1: #<unknown-type (0x7f . 
0x4024a480) @ 0x4024a488>

(first argument of scm_regexp_exec was r)

Is this error really related to garbage collection, and what is then the
means to protect my newly created object ?

Where can I get more information on Guile 1.3 garbage collection ?

PS: I use debian potato's guile3 package (Guile 1.3)
-- 
Etienne BERNARD   ISIA, Mines de Paris / Ecole Centrale Paris, France.
E-Mail : eb@via.ecp.fr    WWW : http://www.via.ecp.fr/~eb/    IRC : eb