Right, I was wondering if I should tell you that. That means:let _ =my main definition...orlet () =my main definition...each get evaluated very similarly to how a main function would. Is there code that you can post in order that I/we can help you?On Fri, Jul 17, 2015 at 2:53 PM, Shuai Wang <wangshuai901@gmail.com> wrote:Here is my compilation script.ocamlbuild -use-ocamlfind XXX1.native XXX2.native ... init.native -ocamlopt "-inline 20" -ocamlopt -nodynlinkAnd our tool always execute init.native.On Fri, Jul 17, 2015 at 2:50 PM, Kenneth Adam Miller <kennethadammiller@gmail.com> wrote:Can you post your build specification?On Fri, Jul 17, 2015 at 2:35 PM, Shuai Wang <wangshuai901@gmail.com> wrote:Dear list,I am working on some tools written in OCaml (compiled by OCaml version 4.01.0).This morning I changed some code, compiled it and let it processing some large data (~ 4G), it never stops after over 2 hours.I feed the tool with a tiny input which took less than 1 second to process before, and I figured out that now it takes around 2.5 minutes before entering into "main" function!I tried to clean the whole codebase, and recompile it ( I use ocamlbuild 4.01.0), but the same wired situation still happens..I did this:ltrace ./init.native inputand I got this output flushing out for a very long time (sorry mail list blocks my large image.. ):Is anyone aware this kind of issue before..? Am I messed up something..?I have been working on OCaml for a relatively long time and I didn't encounter this kind of stuff before...Sincerely,Shuai