Test-case (mirage-console + tracing):
open Mirage
let main =
foreign "Unikernel.Main" (console @-> job)
let () =
let tracing = mprof_trace ~size:1000000 () in
register "console" ~tracing [main $ default_console]
Gives:
File "main.ml", line 43, characters 2-12:
Error: This expression has type unit but an expression was expected of type
'a Lwt.t
Also, the code seems to be emitted in the wrong order (tracing should be initialised before everything else, so you can trace the boot sequence and it sees the labels for the initial threads).