I guess "gc temporaries" (search for "gc_temps_size" in s7.c) is the
most likely reason.

On Thu, Jul 2, 2020 at 1:03 PM Kjetil Matheussen
<[email protected]> wrote:
>
> Hi Christos,
>
> I don't know the exact reason why float_arr_gc__free isn't called
> immediately in this specific case, although I can think of several,
> but since S7 doesn't have a precise garbage collector, you can not
> expect unused objects to be freed immediately.
>
> On Thu, Jul 2, 2020 at 12:03 PM Christos Vagias
> <[email protected]> wrote:
> >
> > Hi Bil,
> >
> > I've stumbled upon something which seems like a bug in the gc.
> > I attach a snippet (which uses google test). I hope  it is verbose enough 
> > to demonstrate the problem.
> >
> > To summarize, I definced a c_type to handle dynamic float arrays.
> > The test as it is attached passes. However the test will not pass if the 
> > line proceeding the "problem 1" comment is  uncommented.
> >
> > The 2nd (minor) problem I stumbled upon is that one has to call "(gc)" 
> > twice for the free methods to be called.
> >
> > Another comment/question: how come there is no s7_run_gc function? From 
> > what I can tell you can only trigger it from the scheme side with "(gc)"
> > _______________________________________________
> > Cmdist mailing list
> > [email protected]
> > https://cm-mail.stanford.edu/mailman/listinfo/cmdist
_______________________________________________
Cmdist mailing list
[email protected]
https://cm-mail.stanford.edu/mailman/listinfo/cmdist

Reply via email to