[plt-scheme] PLT Scheme v370
> In general, you should be careful with any C code that may keep a
> reference to something. For example -- say that you allocate pull a C
> string out of a Scheme bytes object, and pass the pointer to a C
> function. As long as the call is active, no GC will happen and things
> are fine -- but if the C code will keep a reference to that string and
> then return, then at some point in the future, the string may have
> been moved.
>
Do you mean something like this?:
static char *global_pointer[10];
void f(Scheme_Object *o)
{
char *s=SCHEME_STR_VAL(o);
global_pointer[0]=s;
...
}
void g(Scheme_Object *o)
{
char *s=SCHEME_STR_VAL(o);
global_pointer[0]=s*+10*;
...
}
???