summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJacques Garrigue <garrigue at math.nagoya-u.ac.jp>2003-01-21 09:06:10 +0000
committerJacques Garrigue <garrigue at math.nagoya-u.ac.jp>2003-01-21 09:06:10 +0000
commit38cd3ccbd769be29a4864ba113105df0151cd043 (patch)
tree492f7753d496610e996d21c6b8c306f1c9843292
parente10ee30680bb37b4e46c9d709e5b87918dd417be (diff)
switch to unification-base moregeneral
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@5383 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
-rw-r--r--testlabl/multimatch.ml6
1 files changed, 3 insertions, 3 deletions
diff --git a/testlabl/multimatch.ml b/testlabl/multimatch.ml
index 254a1b326..60ac92216 100644
--- a/testlabl/multimatch.ml
+++ b/testlabl/multimatch.ml
@@ -54,11 +54,11 @@ end = struct let g = g end;;
let r = ref []
let f = multifun `A -> r | `B -> ref [];;
-(* Bad *)
+(* Now OK *)
module M : sig
val f : [< `A & 'b = int list ref | `B & 'b = 'c list ref] -> 'b
end = struct let f = f end;;
-(* OK *)
+(* Still OK *)
let l : int list = r;;
module M : sig
val f : [< `A & 'b = int list ref | `B & 'b = 'c list ref] -> 'b
@@ -68,7 +68,7 @@ end = struct let f = f end;;
(* Examples that would need unification *)
let f = multifun `A -> (1, []) | `B -> (true, [])
let g x = fst (f x);;
-(* Should work, but doesn't... *)
+(* Didn't work, now Ok *)
module M : sig
val g : [< `A & 'a * 'b = int * bool | `B & 'a * 'b = bool * int] -> 'a
end = struct let g = g end;;