Dear ocaml-list, the following code does not type check: type foo = {bar : 'a. 'a -> 'a} let a : int -> int = fun x -> x let baz = {bar = Obj.magic a} with the error Error: This field value has type 'a -> 'a which is less general than 'b. 'b -> 'b my question is: how could I use obj.magic to get a polymorphic type? Jacques