summaryrefslogtreecommitdiff
path: root/testsuite/tests/lazy/lazy1.ml
blob: e2e0a2a78ac9b06d7d7d1c050a5352b17ed131a5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
(* TEST
 ocamlopt_flags += " -O3 ";
*)

(* Mantis 7301, due to A. Frisch *)

let foo () =
  (fun xs0 () -> Lazy.force (List.hd xs0) ())
    (List.map (fun g -> lazy g)
       [Lazy.force (  lazy ( let _ = () in fun () -> ()  ) )]
    )

let () =
  let gen = foo () in
  gen ();
  Gc.compact ();
  print_char 'A'; flush stdout;
  gen ()