[gambit-list] Calling from C on Windows

Dan Hristodorescu dhristodorescu at borderfree.com
Thu Mar 17 11:29:30 EST 2005


Thanks Marc,

I figured out you are very busy and I tried to find exactly why it happens
but it wasn't too obvious for me. I just thought maybe someone else more
experienced than me (especially looking at assembly code) had the same
problem.
It's very good news it's on your list.

I also have an unrelated question regarding the limitations for the C-Scheme
interface in a multithreading environment.
I read that there is a problem with multithreading when calling C to Scheme
and back to C due to stack cleanup. I would like to know what are the safe
scenarios.
Would it also happen in a chain like Scheme to C and back to Scheme?

I assume that calling just Scheme to C or just C from Scheme in a
multithreaded environment would be ok. Is that the case?

Regards,
Dan.



-----Original Message-----
From: Marc Feeley [mailto:feeley at IRO.UMontreal.CA] 
Sent: Wednesday, March 16, 2005 6:58 PM
To: dhristodorescu at borderfree.com
Subject: Re: [gambit-list] Calling from C on Windows

> Hello,
> 
>  
> 
> Does anyone have any luck in calling Gambit4b12 from a C function on a
> non-console Windows application?
> 
> I tried it with both mingw and VS6 and while it works fine in a console
> application it crashes when compiled for the graphical subsystem.
> 
> In debugger it seems that inside the Scheme function a parameter retrieved
> from the stack doesn't have the proper value and I get a segfault.
> 
> I think it has something to do with the stack frame alignment but I
couldn't
> figure out how to avoid it.
> 
>  
> 
> I would appreciate any hints on how to make it work.

Sorry, I've been very busy lately and couldn't look into it.
I'll do that first thing tomorrow morning.  It appears the
problem also exists with Linux.

Marc
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.iro.umontreal.ca/pipermail/gambit-list/attachments/20050317/45151d4d/attachment.htm>


More information about the Gambit-list mailing list