At Tue, 08 Aug 2006 13:38:23 -0700, Randal Walser wrote:
> I've followed the instructions in section 1.2 of Inside PLT MzScheme,
> but the HotSpot JVM (1.5.0_02-b09 mixed mode) reports an
> EXCEPTION_ACCESS_VIOLATION somewhere within scheme_basic_env.
> [...]
> I've also tried scheme_set_stack_base with all possible arg
> combinations. In every case, the call sequence leading to the
> violation is the same.
Setting the C stack base is most likely the problem. The call to
scheme_handle_stack_overflow means that MzScheme thinks its running out
of stack space.
I think scheme_set_stack_base() will be necessary, but how do you
manage to get the stack base within JNI? In other words, maybe you can
show the calls to scheme_set_stack_base() and scheme-basic_env().
> I've tried linking with the MzScheme and GC dlls
>> 1) in their default form (compiled with the /MT MSVC option), and
> 2) with the /MD option and USE_MSVC_MD_LIBRARY defined, as
> recommended in the plt/src/worksp/README file (for linking
> to DLL-based C libraries).
I think special support for /MD isn't necessary anymore, and I dropped
it in the latest upgrade of the GC. I will check into whether it's
needed after all (and clean up the docs if it isn't). My guess is that
this isn't the problem in your application, though.
Matthew