diff options
-rw-r--r-- | bytecomp/discr.ml | 1 | ||||
-rw-r--r-- | bytecomp/heuristic.ml | 4 |
2 files changed, 4 insertions, 1 deletions
diff --git a/bytecomp/discr.ml b/bytecomp/discr.ml index 3aa51d7f84..3907da60c8 100644 --- a/bytecomp/discr.ml +++ b/bytecomp/discr.ml @@ -28,6 +28,7 @@ type discr = let p_discr chan = function | Variant (lab,_,_) -> Printf.fprintf chan "`%s" lab | _ -> () + let arity d = match d with | Constant _ -> 0 | Construct c -> c.cstr_arity diff --git a/bytecomp/heuristic.ml b/bytecomp/heuristic.ml index 7abe3b84ef..7736a04628 100644 --- a/bytecomp/heuristic.ml +++ b/bytecomp/heuristic.ml @@ -385,7 +385,9 @@ let build h xs mat = | 'p' -> directions xs mat | 'q' -> prefix xs mat | 'r' -> nrows xs mat - | 'L' -> (fun ks -> [left xs ks]) + | 'N' -> (fun ks -> [left xs ks]) + | 'L' -> (fun ks -> [leftright xs ks]) + | 'R' -> (fun ks -> [rightleft xs ks]) | 'i' -> (fun x -> x) | c -> Misc.fatal_error (sprintf "Bad heuristic: %c" c) in compose h1 h2 in |