Hi, After having ocamlrun segfault on my program (only when running with OCAMLRUNPARAM=b, without b it reports an uncaught Not_found exception) I compiled the debugging version of it, and this is what I get: file freelist.c; line 123 ### Assertion failed: wo_sz >= 1 Here's a backtrace: #0 caml_failed_assert (expr=0x806f000 "wo_sz >= 1", file=0x806ee80 "freelist.c", line=123) at misc.c:25 #1 0x08067b24 in caml_fl_allocate (wo_sz=0) at freelist.c:123 #2 0x080504d3 in caml_alloc_shr (wosize=0, tag=1) at memory.c:261 #3 0x0806955a in caml_oldify_one (v=134801368, p=0xb798ebf0) at minor_gc.c:94 #4 0x0806997a in caml_oldify_mopup () at minor_gc.c:171 #5 0x08069a17 in caml_empty_minor_heap () at minor_gc.c:193 #6 0x08069ae8 in caml_minor_collection () at minor_gc.c:222 #7 0x08055b4e in caml_array_unsafe_get_float (array=-1210587644, index=17) at array.c:92 #8 0x08055bc5 in caml_array_unsafe_get (array=-1210587644, index=17) at array.c:102 #9 0x0806592b in caml_interprete (prog=0xb7df9008, prog_size=149264) at interp.c:874 #10 0x080676b3 in caml_main (argv=0xbffff754) at startup.c:404 #11 0x0804fe7f in main (argc=2, argv=0xbffff754) at main.c:35 I have put the backtrace with values of all locals (ie. gdb "bt full" output) at http://baron.tky.hut.fi/ocamlrund-bt.full.txt for your convenience. Although this happens randomly, it does happen often enough so I can reproduce it. So please ask me for more debugging information such as contents of some heap variables if you feel it might be useful. Lastly, here's a snippet of ocamlrund output before the crash (from a different run). From it seems something in the bytecode program gets crazy. There's nothing in it that should start to allocate memory like that; it would be nice to get a backtrace though to diagnose the problem, but I can't get it with either OCAMLRUNPARAM=b or with ocamldebug, which seems to be confused by vmthreads or something in the very beginning of the bytecode program[1]. ------------------------------ ### O'Caml runtime: heap check ### !Growing heap to 480k bytes <>$<>$Starting new major GC cycle ### O'Caml runtime: heap check ### Compacting heap... ### O'Caml runtime: heap check ### Shrinking heap to 240k bytes done. <>Starting new major GC cycle ### O'Caml runtime: heap check ### != 1 ------------------------------ Sami [1] shortly after "run" ocamldebug just breaks into the prompt without any message at all, which I find confusing, but that's already another story