> value mlbdd_alloc_manager(MANAGER m) {
>        CAMLparam0();
>        CAMLlocal1 (result);  
>        bdd_overflow_closure(m, mlbdd_overflow, NULL);
>        result = alloc_final(Size_ml_manager, mlbdd_free_manager, 0, 1);
>        Manager_store_pointer(result, (value)m);
>        PRINT_DEBUG("Alloc manager");
>        CAMLreturn result;
>}
I think you need to protect m with 
CAMLparam1(m);
otherwise in the allocation alloc_final, the garbage collector can be
called and the address to m change.
I hope this help.
Later, Juan.
-- In theory, practice and theory are the same, but in practice they are different -- Larry McVoy
This archive was generated by hypermail 2b29 : Mon Feb 21 2000 - 18:08:17 MET