OlivierNicole / ocaml

The core OCaml system: compilers, runtime system, base libraries

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Unexpected segfault with static functor

OlivierNicole opened this issue · comments

# static module F(X : sig val succ : int -> int end) = struct let x = X.succ 42 end;;
(seq
  (apply (field 1 (global Toploop!)) 1 "F/1291"
    (function X/1293 is_a_functor
      (let
        (x/1294 =[int]
           (after //toplevel//(1):68-77 (apply (field 0 X/1293) 42)))
        (pseudo //toplevel//(1):53-81 (makeblock 0 x/1294)))))
  (makearray[addr]))
0a
static module F :
  functor (X : sig val succ : int -> int end) -> sig val x : int end
# static module M = F(^Pervasives);;
(let (F/1291 = (apply (field 0 (global Toploop!)) 1 "F/1291"))
  (seq
    (apply (field 1 (global Toploop!)) 1 "M/1296"
      (apply F/1291 (let (let/1489 = (global ^Pervasives!)) (makeblock 0 0))))
    (makearray[addr])))
Segmentation fault