[gambit-list] compile-file + 0 args c-lambda + syntax-case

Phil Dawes pdawes at users.sf.net
Thu May 31 02:05:36 EDT 2007


Hi Marc, Hi gambit people,

I'm not sure how fixable this is, but if I try to use 'compile-file' to
compile a file containing a c-lambda that has no arguments, from an
environment with syntax-case loaded then I get the following error:

*** ERROR IN map -- invalid syntax ()


If the c-lambda has arguments then it works. If syntax-case isn't loaded
then it works also.

E.g.

------ c.scm -----

(define get-value
   (c-lambda () (int32) "___result = 35;"))

-------------------

$ gsc -
> (compile-file "c")
#t
> (load "~~/syntax-case.scm")
"/usr/local/Gambit-C/4.0b22/syntax-case.scm"
> (compile-file "c")
*** ERROR IN map -- invalid syntax ()

This is in gambit-4.0b22 on x86 linux BTW.

Also, while I'm here, is there a better way to reveal the value of
things to scheme from C? In particular I want to be able to get a
pointer to a C function so that it can be passed to bsearch.

Many thanks,

Phil





More information about the Gambit-list mailing list