(* TEST include testing; ocamlopt_flags = "-inline 20"; *) (* PR6216: wrong inlining of GADT match *) type _ t = | Float : float t | String : string t let f : type a . a t -> a -> unit = fun t a -> match t with | Float -> () | String -> ignore (String.length a : int) let _g (kind : float t) (x : float) : unit = f kind (x *. 13.)