diff --git a/compiler/lib/driver.ml b/compiler/lib/driver.ml index 4048252f3b..729a8da5bd 100644 --- a/compiler/lib/driver.ml +++ b/compiler/lib/driver.ml @@ -39,24 +39,30 @@ let tailcall p = if debug () then Format.eprintf "Tail-call optimization...@."; Tailcall.f p -let deadcode' p = +let deadcode p = if debug () then Format.eprintf "Dead-code...@."; Deadcode.f p -let deadcode p = - let p, _ = deadcode' p in +let deadcode_and_inline (profile : Profile.t) p = + let p, live_vars = deadcode p in + let p = + if Config.Flag.inline () && Config.Flag.deadcode () + then ( + if debug () then Format.eprintf "Inlining...@."; + Inline.f p live_vars) + else p + in + let p = + match profile with + | O1 -> p + | O2 | O3 -> + let p, _ = deadcode p in + p + in let p = Deadcode.merge_blocks p in let p = Code.compact p in p -let inline p = - if Config.Flag.inline () && Config.Flag.deadcode () - then ( - let p, live_vars = deadcode' p in - if debug () then Format.eprintf "Inlining...@."; - Inline.f p live_vars) - else p - let specialize_1 (p, info) = if debug () then Format.eprintf "Specialize...@."; Specialize.f ~function_arity:(fun f -> Specialize.function_arity info f) p @@ -96,13 +102,13 @@ let effects ~deadcode_sentinal p = match Config.effects () with | `Cps | `Double_translation -> if debug () then Format.eprintf "Effects...@."; - let p, live_vars = Deadcode.f p in + let p, live_vars = deadcode p in let info = Global_flow.f ~fast:false p in let p, live_vars = if Config.Flag.globaldeadcode () then let p = Global_deadcode.f p ~deadcode_sentinal info in - Deadcode.f p + deadcode p else p, live_vars in p @@ -153,27 +159,26 @@ let rec loop max name round i (p : 'a) : 'a = p') else loop max name round (i + 1) p' -let round ~first : 'a -> 'a = +let round (profile : Profile.t) ~first : 'a -> 'a = print +> tailcall +> (if first then Fun.id else phi) +> flow +> specialize +> eval - +> inline - +> deadcode + +> deadcode_and_inline profile (* o1 *) -let o1 = loop 2 "round" round 1 +> phi +> flow +> specialize +> eval +> print +let o1 = loop 2 "round" (round O1) 1 +> phi +> flow +> specialize +> eval +> print (* o2 *) -let o2 = loop 10 "round" round 1 +> print +let o2 = loop 10 "round" (round O2) 1 +> print (* o3 *) -let o3 = loop 30 "round" round 1 +> print +let o3 = loop 30 "round" (round O3) 1 +> print let generate ~exported_runtime @@ -640,7 +645,7 @@ let optimize ~profile p = | `JavaScript, `Disabled -> Generate_closure.f | `JavaScript, (`Cps | `Double_translation) | `Wasm, (`Jspi | `Cps) -> Fun.id | `JavaScript, `Jspi | `Wasm, (`Disabled | `Double_translation) -> assert false) - +> map_fst deadcode' + +> map_fst deadcode in if times () then Format.eprintf "Start Optimizing...@."; let t = Timer.make () in diff --git a/compiler/tests-compiler/static_eval.ml b/compiler/tests-compiler/static_eval.ml index 0bb7aa41f7..bae69657bb 100644 --- a/compiler/tests-compiler/static_eval.ml +++ b/compiler/tests-compiler/static_eval.ml @@ -142,11 +142,11 @@ let%expect_test "static eval of string get" = key = param[1], data = param[2], next = param[3], - r = [0, key, data, next], - prec = r, + prec$1 = [0, key, data, next], + prec = prec$1, param$0 = next; for(;;){ - if(! param$0) return r; + if(! param$0) return prec$1; var key$0 = param$0[1], data$0 = param$0[2], diff --git a/compiler/tests-full/stdlib.cma.expected.js b/compiler/tests-full/stdlib.cma.expected.js index c58fab0f3c..88bc43fcae 100644 --- a/compiler/tests-full/stdlib.cma.expected.js +++ b/compiler/tests-full/stdlib.cma.expected.js @@ -477,7 +477,8 @@ l = /*<>*/ caml_ml_string_length(s1), i = /*<>*/ 0; for(;;){ - /*<>*/ if(l <= i) return s1 + "."; + /*<>*/ if(l <= i) + /*<>*/ return s1 + "."; var match = /*<>*/ runtime.caml_string_get(s1, i); a: { @@ -2062,7 +2063,7 @@ /*<>*/ } function iterate(f, x){ function next(_m_){ /*<>*/ return iterate1(f, x, _m_);} - /*<>*/ return function(_m_){ + /*<>*/ return function(param){ /*<>*/ return [0, x, next];} /*<>*/ ; } function mapi_aux(f, i, xs, param){ @@ -2098,7 +2099,7 @@ /*<>*/ } function scan(f, s, xs){ function next(_k_){ /*<>*/ return tail_scan(f, s, xs, _k_);} - /*<>*/ return function(_k_){ + /*<>*/ return function(param){ /*<>*/ return [0, s, next];} /*<>*/ ; } function take_aux(n, xs){ @@ -2179,7 +2180,7 @@ /*<>*/ return take_while(_j_, xs$0, _k_); } /*<>*/ return [0, - function(_j_){ /*<>*/ return [0, x, next];}, + function(param){ /*<>*/ return [0, x, next];}, function(_j_){ /*<>*/ return group(eq, _i_, _j_);}] /*<>*/ ; /*<>*/ } var @@ -2260,7 +2261,7 @@ /*<>*/ return 0 < caml_call2(cmp, x, y) ? [0, y, - function(_h_){ + function(param){ var match = /*<>*/ caml_call1(ys, 0); /*<>*/ if(! match) /*<>*/ return [0, x, xs]; @@ -2269,7 +2270,7 @@ }] : [0, x, - function(_h_){ + function(param){ var match = /*<>*/ caml_call1(xs, 0); /*<>*/ if(! match) /*<>*/ return [0, y, ys]; @@ -2412,11 +2413,11 @@ tails = /*<>*/ match$1[2], heads = match$1[1], _f_ = - /*<>*/ function(_g_){ + /*<>*/ function(param){ /*<>*/ return [0, xs$0, tails]; }; /*<>*/ return [0, - function(_g_){ /*<>*/ return [0, x, heads];}, + function(param){ /*<>*/ return [0, x, heads];}, function(_g_){ /*<>*/ return _a_(_f_, xss$0, _g_); }] /*<>*/ ; @@ -3299,8 +3300,8 @@ var r = /*<>*/ param[2], l = param[1], - _h_ = /*<>*/ flatten(r); - /*<>*/ return caml_call2(Stdlib[37], l, _h_); + _f_ = /*<>*/ flatten(r); + /*<>*/ return caml_call2(Stdlib[37], l, _f_); } function map(f, param){ /*<>*/ if(! param) /*<>*/ return 0; @@ -3438,8 +3439,8 @@ } function map2(f, l1, l2){ /*<>*/ if(l1){ - var _g_ = l1[2], a1 = l1[1]; - if(_g_){ + var _e_ = l1[2], a1 = l1[1]; + if(_e_){ if(l2){ var match = l2[2]; if(match){ @@ -3447,8 +3448,8 @@ l2$0 = match[2], b2 = match[1], b1 = l2[1], - l1$0 = _g_[2], - a2 = _g_[1], + l1$0 = _e_[2], + a2 = _e_[1], r1 = /*<>*/ caml_call2(f, a1, b1), r2 = /*<>*/ caml_call2(f, a2, b2), block = /*<>*/ [0, r2, 24029], @@ -3460,8 +3461,8 @@ a: { /*<>*/ if(l1$1){ - var _h_ = l1$1[2], a1$0 = l1$1[1]; - if(_h_){ + var _f_ = l1$1[2], a1$0 = l1$1[1]; + if(_f_){ if(l2$1){ var match$0 = l2$1[2]; if(match$0){ @@ -3469,8 +3470,8 @@ l2$2 = match$0[2], b2$0 = match$0[1], b1$1 = l2$1[1], - l1$2 = _h_[2], - a2$0 = _h_[1], + l1$2 = _f_[2], + a2$0 = _f_[1], r1$1 = /*<>*/ caml_call2(f, a1$0, b1$1), r2$0 = /*<>*/ caml_call2(f, a2$0, b2$0), dst$0 = /*<>*/ [0, r2$0, 24029]; @@ -3592,8 +3593,8 @@ var l = /*<>*/ param[2], a = param[1], - _g_ = /*<>*/ caml_call1(p, a); - /*<>*/ if(! _g_) return _g_; + _e_ = /*<>*/ caml_call1(p, a); + /*<>*/ if(! _e_) return _e_; param = l; } /*<>*/ } @@ -3604,8 +3605,8 @@ var l = /*<>*/ param[2], a = param[1], - _g_ = /*<>*/ caml_call1(p, a); - /*<>*/ if(_g_) return _g_; + _e_ = /*<>*/ caml_call1(p, a); + /*<>*/ if(_e_) return _e_; param = l; } /*<>*/ } @@ -3619,8 +3620,8 @@ a2 = l2[1], l1$0 = l1[2], a1 = l1[1], - _g_ = /*<>*/ caml_call2(p, a1, a2); - /*<>*/ if(! _g_) return _g_; + _e_ = /*<>*/ caml_call2(p, a1, a2); + /*<>*/ if(! _e_) return _e_; l1 = l1$0; l2 = l2$0; continue; @@ -3640,8 +3641,8 @@ a2 = l2[1], l1$0 = l1[2], a1 = l1[1], - _g_ = /*<>*/ caml_call2(p, a1, a2); - /*<>*/ if(_g_) return _g_; + _e_ = /*<>*/ caml_call2(p, a1, a2); + /*<>*/ if(_e_) return _e_; l1 = l1$0; l2 = l2$0; continue; @@ -3658,8 +3659,8 @@ var l = /*<>*/ param[2], a = param[1], - _g_ = /*<>*/ 0 === caml_compare(a, x) ? 1 : 0; - /*<>*/ if(_g_) return _g_; + _e_ = /*<>*/ 0 === caml_compare(a, x) ? 1 : 0; + /*<>*/ if(_e_) return _e_; param = l; } /*<>*/ } @@ -3670,8 +3671,8 @@ var l = /*<>*/ param[2], a = param[1], - _g_ = /*<>*/ a === x ? 1 : 0; - if(_g_) return _g_; + _e_ = /*<>*/ a === x ? 1 : 0; + if(_e_) return _e_; param = l; } /*<>*/ } @@ -3739,8 +3740,8 @@ var l = /*<>*/ param[2], a = param[1][1], - _g_ = /*<>*/ 0 === caml_compare(a, x) ? 1 : 0; - /*<>*/ if(_g_) return _g_; + _e_ = /*<>*/ 0 === caml_compare(a, x) ? 1 : 0; + /*<>*/ if(_e_) return _e_; param = l; } /*<>*/ } @@ -3751,8 +3752,8 @@ var l = /*<>*/ param[2], a = param[1][1], - _g_ = /*<>*/ a === x ? 1 : 0; - if(_g_) return _g_; + _e_ = /*<>*/ a === x ? 1 : 0; + if(_e_) return _e_; param = l; } /*<>*/ } @@ -3792,16 +3793,16 @@ } /*<>*/ } function find_index(p){ - var _f_ = /*<>*/ 0; - return function(_g_){ - var i = /*<>*/ _f_, param = _g_; + var i = /*<>*/ 0; + return function(param$0){ + var i$0 = /*<>*/ i, param = param$0; for(;;){ /*<>*/ if(! param) /*<>*/ return 0; var l = /*<>*/ param[2], a = param[1]; /*<>*/ if(caml_call1(p, a)) - /*<>*/ return [0, i]; - var i$0 = /*<>*/ i + 1 | 0; - i = i$0; + /*<>*/ return [0, i$0]; + var i$1 = /*<>*/ i$0 + 1 | 0; + i$0 = i$1; param = l; }} /*<>*/ ; /*<>*/ } @@ -3818,19 +3819,19 @@ } /*<>*/ } function find_mapi(f){ - var _e_ = /*<>*/ 0; - return function(_f_){ - var i = /*<>*/ _e_, param = _f_; + var i = /*<>*/ 0; + return function(param$0){ + var i$0 = /*<>*/ i, param = param$0; for(;;){ /*<>*/ if(! param) /*<>*/ return 0; var l = /*<>*/ param[2], x = param[1], - result = /*<>*/ caml_call2(f, i, x); + result = /*<>*/ caml_call2(f, i$0, x); /*<>*/ if(result) /*<>*/ return result; - var i$0 = /*<>*/ i + 1 | 0; - i = i$0; + var i$1 = /*<>*/ i$0 + 1 | 0; + i$0 = i$1; param = l; }} /*<>*/ ; /*<>*/ } @@ -3999,21 +4000,22 @@ l$0 = l[2], x = l[1], block = /*<>*/ [0, x, 24029], + n$0 = n - 1 | 0, dst = /*<>*/ block, offset = 1, - n$0 = n - 1 | 0, + n$1 = n$0, l$1 = l$0; for(;;){ - /*<>*/ if(0 !== n$0 && l$1){ + /*<>*/ if(0 !== n$1 && l$1){ var l$2 = l$1[2], x$0 = l$1[1], dst$0 = /*<>*/ [0, x$0, 24029]; dst[offset + 1] = dst$0; - var n$1 = n$0 - 1 | 0; + var n$2 = n$1 - 1 | 0; dst = dst$0; offset = 1; - n$0 = n$1; + n$1 = n$2; l$1 = l$2; continue; } @@ -4023,41 +4025,41 @@ } /*<>*/ return 0; /*<>*/ } - function drop(n, l){ + function drop(n, rest){ /*<>*/ if(n < 0) /*<>*/ caml_call1(Stdlib[1], cst_List_drop); - var i = /*<>*/ 0, rest = l; + var i = /*<>*/ 0, rest$0 = rest; for(;;){ - /*<>*/ if(rest){ - var rest$0 = rest[2]; + /*<>*/ if(rest$0){ + var rest$1 = rest$0[2]; /*<>*/ if(i < n){ var i$0 = /*<>*/ i + 1 | 0; i = i$0; - rest = rest$0; + rest$0 = rest$1; continue; } } - /*<>*/ return rest; + /*<>*/ return rest$0; } /*<>*/ } function take_while(p, rest){ /*<>*/ if(rest){ - var l = rest[2], x = rest[1]; + var rest$0 = rest[2], x = rest[1]; /*<>*/ if(caml_call1(p, x)){ var block = /*<>*/ [0, x, 24029], dst = /*<>*/ block, offset = 1, - rest$0 = l; + rest$1 = rest$0; for(;;){ - /*<>*/ if(rest$0){ - var rest$1 = rest$0[2], x$0 = rest$0[1]; + /*<>*/ if(rest$1){ + var rest$2 = rest$1[2], x$0 = rest$1[1]; /*<>*/ if(caml_call1(p, x$0)){ var dst$0 = /*<>*/ [0, x$0, 24029]; dst[offset + 1] = dst$0; dst = dst$0; offset = 1; - rest$0 = rest$1; + rest$1 = rest$2; continue; } } @@ -5801,13 +5803,13 @@ var i$0 = /*<>*/ i + 1 | 0; /*<>*/ if(max < i$0) /*<>*/ return caml_call1(dec_invalid, 1) /*<>*/ ; - var b1$4 = /*<>*/ caml_bytes_unsafe_get(b, i$0); + var b1$4 = /*<>*/ caml_bytes_unsafe_get(b, i$0); /*<>*/ if(not_in_x80_to_x9F(b1$4)) /*<>*/ return caml_call1(dec_invalid, 1) /*<>*/ ; var i$1 = /*<>*/ i$0 + 1 | 0; /*<>*/ if(max < i$1) /*<>*/ return caml_call1(dec_invalid, 2) /*<>*/ ; - var b2$3 = /*<>*/ caml_bytes_unsafe_get(b, i$1); + var b2$3 = /*<>*/ caml_bytes_unsafe_get(b, i$1); /*<>*/ return not_in_x80_to_xBF(b2$3) ? /*<>*/ caml_call1(dec_invalid, 2) : /*<>*/ dec_ret @@ -5816,19 +5818,19 @@ var i$4 = /*<>*/ i + 1 | 0; /*<>*/ if(max < i$4) /*<>*/ return caml_call1(dec_invalid, 1) /*<>*/ ; - var b1$2 = /*<>*/ caml_bytes_unsafe_get(b, i$4); + var b1$2 = /*<>*/ caml_bytes_unsafe_get(b, i$4); /*<>*/ if(not_in_x90_to_xBF(b1$2)) /*<>*/ return caml_call1(dec_invalid, 1) /*<>*/ ; var i$5 = /*<>*/ i$4 + 1 | 0; /*<>*/ if(max < i$5) /*<>*/ return caml_call1(dec_invalid, 2) /*<>*/ ; - var b2$1 = /*<>*/ caml_bytes_unsafe_get(b, i$5); + var b2$1 = /*<>*/ caml_bytes_unsafe_get(b, i$5); /*<>*/ if(not_in_x80_to_xBF(b2$1)) /*<>*/ return caml_call1(dec_invalid, 2) /*<>*/ ; var i$6 = /*<>*/ i$5 + 1 | 0; /*<>*/ if(max < i$6) /*<>*/ return caml_call1(dec_invalid, 3) /*<>*/ ; - var b3$1 = /*<>*/ caml_bytes_unsafe_get(b, i$6); + var b3$1 = /*<>*/ caml_bytes_unsafe_get(b, i$6); /*<>*/ return not_in_x80_to_xBF(b3$1) ? /*<>*/ caml_call1(dec_invalid, 3) : /*<>*/ dec_ret @@ -5838,19 +5840,19 @@ var i$10 = /*<>*/ i + 1 | 0; /*<>*/ if(max < i$10) /*<>*/ return caml_call1(dec_invalid, 1) /*<>*/ ; - var b1$0 = /*<>*/ caml_bytes_unsafe_get(b, i$10); + var b1$0 = /*<>*/ caml_bytes_unsafe_get(b, i$10); /*<>*/ if(not_in_x80_to_x8F(b1$0)) /*<>*/ return caml_call1(dec_invalid, 1) /*<>*/ ; var i$11 = /*<>*/ i$10 + 1 | 0; /*<>*/ if(max < i$11) /*<>*/ return caml_call1(dec_invalid, 2) /*<>*/ ; - var b2 = /*<>*/ caml_bytes_unsafe_get(b, i$11); + var b2 = /*<>*/ caml_bytes_unsafe_get(b, i$11); /*<>*/ if(not_in_x80_to_xBF(b2)) /*<>*/ return caml_call1(dec_invalid, 2) /*<>*/ ; var i$12 = /*<>*/ i$11 + 1 | 0; /*<>*/ if(max < i$12) /*<>*/ return caml_call1(dec_invalid, 3) /*<>*/ ; - var b3 = /*<>*/ caml_bytes_unsafe_get(b, i$12); + var b3 = /*<>*/ caml_bytes_unsafe_get(b, i$12); /*<>*/ return not_in_x80_to_xBF(b3) ? /*<>*/ caml_call1(dec_invalid, 3) : /*<>*/ dec_ret @@ -5862,19 +5864,19 @@ var i$7 = /*<>*/ i + 1 | 0; /*<>*/ if(max < i$7) /*<>*/ return caml_call1(dec_invalid, 1) /*<>*/ ; - var b1$1 = /*<>*/ caml_bytes_unsafe_get(b, i$7); + var b1$1 = /*<>*/ caml_bytes_unsafe_get(b, i$7); /*<>*/ if(not_in_x80_to_xBF(b1$1)) /*<>*/ return caml_call1(dec_invalid, 1) /*<>*/ ; var i$8 = /*<>*/ i$7 + 1 | 0; /*<>*/ if(max < i$8) /*<>*/ return caml_call1(dec_invalid, 2) /*<>*/ ; - var b2$0 = /*<>*/ caml_bytes_unsafe_get(b, i$8); + var b2$0 = /*<>*/ caml_bytes_unsafe_get(b, i$8); /*<>*/ if(not_in_x80_to_xBF(b2$0)) /*<>*/ return caml_call1(dec_invalid, 2) /*<>*/ ; var i$9 = /*<>*/ i$8 + 1 | 0; /*<>*/ if(max < i$9) /*<>*/ return caml_call1(dec_invalid, 3) /*<>*/ ; - var b3$0 = /*<>*/ caml_bytes_unsafe_get(b, i$9); + var b3$0 = /*<>*/ caml_bytes_unsafe_get(b, i$9); /*<>*/ return not_in_x80_to_xBF(b3$0) ? /*<>*/ caml_call1(dec_invalid, 3) : /*<>*/ dec_ret @@ -5886,13 +5888,13 @@ var i$13 = /*<>*/ i + 1 | 0; /*<>*/ if(max < i$13) /*<>*/ return caml_call1(dec_invalid, 1) /*<>*/ ; - var b1$5 = /*<>*/ caml_bytes_unsafe_get(b, i$13); + var b1$5 = /*<>*/ caml_bytes_unsafe_get(b, i$13); /*<>*/ if(not_in_xA0_to_xBF(b1$5)) /*<>*/ return caml_call1(dec_invalid, 1) /*<>*/ ; var i$14 = /*<>*/ i$13 + 1 | 0; /*<>*/ if(max < i$14) /*<>*/ return caml_call1(dec_invalid, 2) /*<>*/ ; - var b2$4 = /*<>*/ caml_bytes_unsafe_get(b, i$14); + var b2$4 = /*<>*/ caml_bytes_unsafe_get(b, i$14); /*<>*/ return not_in_x80_to_xBF(b2$4) ? /*<>*/ caml_call1(dec_invalid, 2) : /*<>*/ dec_ret @@ -5901,13 +5903,13 @@ var i$2 = /*<>*/ i + 1 | 0; /*<>*/ if(max < i$2) /*<>*/ return caml_call1(dec_invalid, 1) /*<>*/ ; - var b1$3 = /*<>*/ caml_bytes_unsafe_get(b, i$2); + var b1$3 = /*<>*/ caml_bytes_unsafe_get(b, i$2); /*<>*/ if(not_in_x80_to_xBF(b1$3)) /*<>*/ return caml_call1(dec_invalid, 1) /*<>*/ ; var i$3 = /*<>*/ i$2 + 1 | 0; /*<>*/ if(max < i$3) /*<>*/ return caml_call1(dec_invalid, 2) /*<>*/ ; - var b2$2 = /*<>*/ caml_bytes_unsafe_get(b, i$3); + var b2$2 = /*<>*/ caml_bytes_unsafe_get(b, i$3); /*<>*/ return not_in_x80_to_xBF(b2$2) ? /*<>*/ caml_call1(dec_invalid, 2) : /*<>*/ dec_ret @@ -5919,7 +5921,7 @@ var i$15 = /*<>*/ i + 1 | 0; /*<>*/ if(max < i$15) /*<>*/ return caml_call1(dec_invalid, 1) /*<>*/ ; - var b1 = /*<>*/ caml_bytes_unsafe_get(b, i$15); + var b1 = /*<>*/ caml_bytes_unsafe_get(b, i$15); /*<>*/ return not_in_x80_to_xBF(b1) ? /*<>*/ caml_call1(dec_invalid, 1) : /*<>*/ dec_ret(2, (b0 & 31) << 6 | b1 & 63) /*<>*/ ; @@ -5938,7 +5940,7 @@ /*<>*/ throw caml_maybe_attach_backtrace ([0, Assert_failure, _b_], 1); /*<>*/ if(127 >= u$0){ - caml_bytes_set(b, i, u$0); + /*<>*/ caml_bytes_set(b, i, u$0); /*<>*/ return 1; } /*<>*/ if(2047 >= u$0){ @@ -5980,7 +5982,7 @@ var max = /*<>*/ caml_ml_bytes_length(b) - 1 | 0, i = 0; for(;;){ /*<>*/ if(max < i) /*<>*/ return 1; - var match = /*<>*/ caml_bytes_unsafe_get(b, i); + var match = /*<>*/ caml_bytes_unsafe_get(b, i); a: { /*<>*/ if(224 <= match){ @@ -5998,7 +6000,7 @@ && ! /*<>*/ not_in_x80_to_xBF - ( /*<>*/ caml_bytes_unsafe_get(b, last))){ + ( /*<>*/ caml_bytes_unsafe_get(b, last))){ var i$0 = /*<>*/ last + 1 | 0; i = i$0; continue; @@ -6019,7 +6021,7 @@ && ! /*<>*/ not_in_x80_to_xBF - ( /*<>*/ caml_bytes_unsafe_get(b, last$1))){ + ( /*<>*/ caml_bytes_unsafe_get(b, last$1))){ var i$2 = /*<>*/ last$1 + 1 | 0; i = i$2; continue; @@ -6040,7 +6042,7 @@ && ! /*<>*/ not_in_x80_to_xBF - ( /*<>*/ caml_bytes_unsafe_get(b, last$3))){ + ( /*<>*/ caml_bytes_unsafe_get(b, last$3))){ var i$4 = /*<>*/ last$3 + 1 | 0; i = i$4; continue; @@ -6063,7 +6065,7 @@ && ! /*<>*/ not_in_x80_to_xBF - ( /*<>*/ caml_bytes_unsafe_get(b, last$2))){ + ( /*<>*/ caml_bytes_unsafe_get(b, last$2))){ var i$3 = /*<>*/ last$2 + 1 | 0; i = i$3; continue; @@ -6082,7 +6084,7 @@ && ! /*<>*/ not_in_x80_to_xBF - ( /*<>*/ caml_bytes_unsafe_get(b, last$4))){ + ( /*<>*/ caml_bytes_unsafe_get(b, last$4))){ var i$5 = /*<>*/ last$4 + 1 | 0; i = i$5; continue; @@ -6099,7 +6101,7 @@ && ! /*<>*/ not_in_x80_to_xBF - ( /*<>*/ caml_bytes_unsafe_get(b, last$0))){ + ( /*<>*/ caml_bytes_unsafe_get(b, last$0))){ var i$1 = /*<>*/ last$0 + 1 | 0; i = i$1; continue; @@ -6118,7 +6120,7 @@ && ! /*<>*/ not_in_x80_to_xBF - ( /*<>*/ caml_bytes_unsafe_get(b, last$5))){ + ( /*<>*/ caml_bytes_unsafe_get(b, last$5))){ var i$6 = /*<>*/ last$5 + 1 | 0; i = i$6; continue; @@ -7345,7 +7347,7 @@ /*<>*/ return r; /*<>*/ } function to_list(a){ - var i = /*<>*/ a.length - 2 | 0, res = 0; + var i$1 = /*<>*/ a.length - 2 | 0, i = i$1, res = 0; for(;;){ /*<>*/ if(0 > i) /*<>*/ return res; var res$0 = /*<>*/ [0, a[i + 1], res], i$0 = i - 1 | 0; @@ -7679,7 +7681,7 @@ var e$1 = /*<>*/ caml_check_bound(a, i$6)[i$6 + 1]; a: { - /*<>*/ try{ + /*<>*/ try{ var i = i$6; for(;;){ var j = /*<>*/ maxson(l, i); @@ -7716,7 +7718,7 @@ for(;;){ var e$0 = /*<>*/ caml_check_bound(a, i$4)[i$4 + 1]; /*<>*/ a[i$4 + 1] = caml_check_bound(a, 0)[1]; - var i$5 = /*<>*/ 0; + var i$5 = /*<>*/ 0; try{ var i$1 = i$5; for(;;){ @@ -7735,7 +7737,7 @@ { b: { - var i$3 = /*<>*/ i$2; + var i$3 = /*<>*/ i$2; for(;;){ var father = /*<>*/ (i$3 - 1 | 0) / 3 | 0; /*<>*/ if(i$3 === father) @@ -7783,12 +7785,14 @@ var src1r = /*<>*/ src1ofs + src1len | 0, src2r = src2ofs + src2len | 0, - _u_ = + s2$1 = /*<>*/ caml_check_bound(src2, src2ofs)[src2ofs + 1], + s1$1 = + /*<>*/ caml_check_bound(a, src1ofs)[src1ofs + 1], i1 = /*<>*/ src1ofs, - s1 = /*<>*/ caml_check_bound(a, src1ofs)[src1ofs + 1], - i2 = /*<>*/ src2ofs, - s2 = _u_, + s1 = s1$1, + i2 = src2ofs, + s2 = s2$1, d = dstofs; for(;;) /*<>*/ if(0 < caml_call2(cmp, s1, s2)){ @@ -7945,7 +7949,7 @@ return function(_c_){ /*<>*/ return aux(_b_, _c_);} /*<>*/ ; /*<>*/ } - function of_seq(i$1){ + function of_seq(i$2){ var l = /*<>*/ caml_call3 @@ -7954,14 +7958,15 @@ /*<>*/ return [0, x, acc]; /*<>*/ }, 0, - i$1); + i$2); /*<>*/ if(! l) /*<>*/ return [0]; var tl = /*<>*/ l[2], hd = l[1], len = /*<>*/ list_length(0, l), a = /*<>*/ caml_array_make(len, hd), - i = /*<>*/ len - 2 | 0, + i$1 = /*<>*/ len - 2 | 0, + i = i$1, param = tl; for(;;){ /*<>*/ if(! param) /*<>*/ return a; @@ -8691,7 +8696,7 @@ var e$1 = /*<>*/ caml_check_bound(a, i$6)[i$6 + 1]; a: { - /*<>*/ try{ + /*<>*/ try{ var i = i$6; for(;;){ var j = /*<>*/ maxson(l, i); @@ -8728,7 +8733,7 @@ for(;;){ var e$0 = /*<>*/ caml_check_bound(a, i$4)[i$4 + 1]; /*<>*/ a[i$4 + 1] = caml_check_bound(a, 0)[1]; - var i$5 = /*<>*/ 0; + var i$5 = /*<>*/ 0; try{ var i$1 = i$5; for(;;){ @@ -8747,7 +8752,7 @@ { b: { - var i$3 = /*<>*/ i$2; + var i$3 = /*<>*/ i$2; for(;;){ var father = /*<>*/ (i$3 - 1 | 0) / 3 | 0; /*<>*/ if(i$3 === father) @@ -8795,12 +8800,14 @@ var src1r = /*<>*/ src1ofs + src1len | 0, src2r = src2ofs + src2len | 0, - _y_ = + s2$1 = /*<>*/ caml_check_bound(src2, src2ofs)[src2ofs + 1], + s1$1 = + /*<>*/ caml_check_bound(a, src1ofs)[src1ofs + 1], i1 = /*<>*/ src1ofs, - s1 = /*<>*/ caml_check_bound(a, src1ofs)[src1ofs + 1], - i2 = /*<>*/ src2ofs, - s2 = _y_, + s1 = s1$1, + i2 = src2ofs, + s2 = s2$1, d = dstofs; for(;;) /*<>*/ if(0 < caml_call2(cmp, s1, s2)){ @@ -8935,7 +8942,7 @@ return function(_m_){ /*<>*/ return aux(_l_, _m_);} /*<>*/ ; /*<>*/ } - function of_seq(i$1){ + function of_seq(i$2){ var l = /*<>*/ caml_call3 @@ -8944,10 +8951,11 @@ /*<>*/ return [0, x, acc]; /*<>*/ }, 0, - i$1), + i$2), len = /*<>*/ caml_call1(Stdlib_List[1], l), a = /*<>*/ caml_floatarray_create(len), - i = /*<>*/ len - 1 | 0, + i$1 = /*<>*/ len - 1 | 0, + i = i$1, param = l; for(;;){ /*<>*/ if(! param) /*<>*/ return a; @@ -10018,7 +10026,7 @@ /*<>*/ return caml_check_bound(env[2], _c_)[_c_ + 1] /*<>*/ ; } function symbol_start_pos(param){ - var i = /*<>*/ env[12]; + var i$1 = /*<>*/ env[12], i = i$1; for(;;){ /*<>*/ if(0 >= i){ var _c_ = /*<>*/ env[11]; @@ -10535,9 +10543,10 @@ /*<>*/ } function compare(s1, s2){ var - _p_ = /*<>*/ cons_enum(s2, 0), - e1 = /*<>*/ /*<>*/ cons_enum(s1, 0), - e2 = /*<>*/ _p_; + e2$2 = /*<>*/ cons_enum(s2, 0), + e1$2 = /*<>*/ cons_enum(s1, 0), + e1 = /*<>*/ e1$2, + e2 = e2$2; for(;;){ /*<>*/ if(! e1) return e2 ? -1 : 0 /*<>*/ ; @@ -11197,8 +11206,8 @@ var hl = /*<>*/ height(l), hr = /*<>*/ height(r), - _x_ = /*<>*/ hr <= hl ? hl + 1 | 0 : hr + 1 | 0; - return [0, l, x, d, r, _x_]; + _w_ = /*<>*/ hr <= hl ? hl + 1 | 0 : hr + 1 | 0; + return [0, l, x, d, r, _w_]; /*<>*/ } function singleton(x, d){ /*<>*/ return [0, 0, x, d, 0, 1]; @@ -11220,8 +11229,8 @@ ld = l[3], lv = l[2], ll = l[1], - _t_ = /*<>*/ height(lr); - /*<>*/ if(_t_ <= height(ll)) + _s_ = /*<>*/ height(lr); + /*<>*/ if(_s_ <= height(ll)) /*<>*/ return /*<>*/ create (ll, lv, ld, /*<>*/ create(lr, x, d, r)) /*<>*/ ; /*<>*/ if(! lr) @@ -11231,16 +11240,16 @@ lrd = lr[3], lrv = lr[2], lrl = lr[1], - _u_ = /*<>*/ create(lrr, x, d, r); + _t_ = /*<>*/ create(lrr, x, d, r); /*<>*/ return /*<>*/ create ( /*<>*/ create(ll, lv, ld, lrl), lrv, lrd, - _u_) /*<>*/ ; + _t_) /*<>*/ ; } /*<>*/ if((hl + 2 | 0) >= hr){ - var _x_ = /*<>*/ hr <= hl ? hl + 1 | 0 : hr + 1 | 0; - return [0, l, x, d, r, _x_]; + var _w_ = /*<>*/ hr <= hl ? hl + 1 | 0 : hr + 1 | 0; + return [0, l, x, d, r, _w_]; } /*<>*/ if(! r) /*<>*/ return caml_call1(Stdlib[1], cst_Map_bal$2) /*<>*/ ; @@ -11249,8 +11258,8 @@ rd = r[3], rv = r[2], rl = r[1], - _v_ = /*<>*/ height(rl); - /*<>*/ if(_v_ <= height(rr)) + _u_ = /*<>*/ height(rl); + /*<>*/ if(_u_ <= height(rr)) /*<>*/ return /*<>*/ create ( /*<>*/ create(l, x, d, rl), rv, rd, rr) /*<>*/ ; /*<>*/ if(! rl) @@ -11260,9 +11269,9 @@ rld = rl[3], rlv = rl[2], rll = rl[1], - _w_ = /*<>*/ create(rlr, rv, rd, rr); + _v_ = /*<>*/ create(rlr, rv, rd, rr); /*<>*/ return /*<>*/ create - ( /*<>*/ create(l, x, d, rll), rlv, rld, _w_) /*<>*/ ; + ( /*<>*/ create(l, x, d, rll), rlv, rld, _v_) /*<>*/ ; } var empty = /*<>*/ 0; function is_empty(param){ @@ -11463,8 +11472,8 @@ v = param[2], l = param[1], c = /*<>*/ caml_call2(Ord[1], x, v), - _t_ = /*<>*/ 0 === c ? 1 : 0; - if(_t_) return _t_; + _s_ = /*<>*/ 0 === c ? 1 : 0; + if(_s_) return _s_; param = 0 <= c ? r : l; } /*<>*/ } @@ -11671,15 +11680,15 @@ d = param[3], v = param[2], l = param[1], - _r_ = /*<>*/ caml_call2(p, v, d); - /*<>*/ if(_r_){ - var _s_ = /*<>*/ for_all(p, l); - /*<>*/ if(_s_){param = r; continue;} - var _t_ = _s_; + _q_ = /*<>*/ caml_call2(p, v, d); + /*<>*/ if(_q_){ + var _r_ = /*<>*/ for_all(p, l); + /*<>*/ if(_r_){param = r; continue;} + var _s_ = _r_; } else - var _t_ = /*<>*/ _r_; - return _t_; + var _s_ = /*<>*/ _q_; + return _s_; } /*<>*/ } function exists(p, param$0){ @@ -11691,15 +11700,15 @@ d = param[3], v = param[2], l = param[1], - _p_ = /*<>*/ caml_call2(p, v, d); - /*<>*/ if(_p_) - var _q_ = _p_; + _o_ = /*<>*/ caml_call2(p, v, d); + /*<>*/ if(_o_) + var _p_ = _o_; else{ - var _r_ = /*<>*/ exists(p, l); - /*<>*/ if(! _r_){param = r; continue;} - var _q_ = _r_; + var _q_ = /*<>*/ exists(p, l); + /*<>*/ if(! _q_){param = r; continue;} + var _p_ = _q_; } - /*<>*/ return _q_; + /*<>*/ return _p_; } /*<>*/ } function add_min_binding(k, x, param){ @@ -11801,10 +11810,10 @@ r2 = /*<>*/ match[3], d2 = match[2], l2 = match[1], - _m_ = /*<>*/ merge(f, r1, r2), - _n_ = /*<>*/ caml_call3(f, v1, [0, d1], d2); + _l_ = /*<>*/ merge(f, r1, r2), + _m_ = /*<>*/ caml_call3(f, v1, [0, d1], d2); /*<>*/ return /*<>*/ concat_or_join - ( /*<>*/ merge(f, l1, l2), v1, _n_, _m_) /*<>*/ ; + ( /*<>*/ merge(f, l1, l2), v1, _m_, _l_) /*<>*/ ; } } else if(! s2) /*<>*/ return 0; @@ -11820,10 +11829,10 @@ r1$0 = /*<>*/ match$0[3], d1$0 = match$0[2], l1$0 = match$0[1], - _o_ = /*<>*/ merge(f, r1$0, r2$0), - _p_ = /*<>*/ caml_call3(f, v2, d1$0, [0, d2$0]); + _n_ = /*<>*/ merge(f, r1$0, r2$0), + _o_ = /*<>*/ caml_call3(f, v2, d1$0, [0, d2$0]); /*<>*/ return /*<>*/ concat_or_join - ( /*<>*/ merge(f, l1$0, l2$0), v2, _p_, _o_) /*<>*/ ; + ( /*<>*/ merge(f, l1$0, l2$0), v2, _o_, _n_) /*<>*/ ; } function union(f, s1, s2){ /*<>*/ if(s1){ @@ -11924,11 +11933,11 @@ rf = /*<>*/ match$0[2], rt = match$0[1]; /*<>*/ if(pvd){ - var _l_ = /*<>*/ concat(lf, rf); - /*<>*/ return [0, join(lt, v, d, rt), _l_] /*<>*/ ; + var _k_ = /*<>*/ concat(lf, rf); + /*<>*/ return [0, join(lt, v, d, rt), _k_] /*<>*/ ; } - var _m_ = /*<>*/ join(lf, v, d, rf); - /*<>*/ return [0, concat(lt, rt), _m_] /*<>*/ ; + var _l_ = /*<>*/ join(lf, v, d, rf); + /*<>*/ return [0, concat(lt, rt), _l_] /*<>*/ ; /*<>*/ } function cons_enum(m$0, e$1){ var m = /*<>*/ m$0, e = e$1; @@ -11946,9 +11955,10 @@ /*<>*/ } function compare(cmp, m1, m2){ var - _l_ = /*<>*/ cons_enum(m2, 0), - e1 = /*<>*/ /*<>*/ cons_enum(m1, 0), - e2 = /*<>*/ _l_; + e2$2 = /*<>*/ cons_enum(m2, 0), + e1$2 = /*<>*/ cons_enum(m1, 0), + e1 = /*<>*/ e1$2, + e2 = e2$2; for(;;){ /*<>*/ if(! e1) return e2 ? -1 : 0 /*<>*/ ; @@ -11976,9 +11986,10 @@ /*<>*/ } function equal(cmp, m1, m2){ var - _l_ = /*<>*/ cons_enum(m2, 0), - e1 = /*<>*/ /*<>*/ cons_enum(m1, 0), - e2 = /*<>*/ _l_; + e2$2 = /*<>*/ cons_enum(m2, 0), + e1$2 = /*<>*/ cons_enum(m1, 0), + e1 = /*<>*/ e1$2, + e2 = e2$2; for(;;){ /*<>*/ if(! e1) return e2 ? 0 : 1 /*<>*/ ; @@ -12814,20 +12825,20 @@ function add_buffer(b, bs){ /*<>*/ return add_subbytes(b, bs[1][1], 0, bs[2]) /*<>*/ ; } - function add_channel(b, ic, to_read$1){ + function add_channel(b, ic, len){ var - _e_ = /*<>*/ to_read$1 < 0 ? 1 : 0, - _f_ = _e_ || (Stdlib_Sys[12] < to_read$1 ? 1 : 0); + _e_ = /*<>*/ len < 0 ? 1 : 0, + _f_ = _e_ || (Stdlib_Sys[12] < len ? 1 : 0); if(_f_) /*<>*/ caml_call1(Stdlib[1], cst_Buffer_add_channel); - /*<>*/ if(b[1][2] < (b[2] + to_read$1 | 0)) - /*<>*/ resize(b, to_read$1); + /*<>*/ if(b[1][2] < (b[2] + len | 0)) + /*<>*/ resize(b, len); var ofs$1 = /*<>*/ b[2], buf = b[1][1], already_read = /*<>*/ 0, ofs = ofs$1, - to_read = to_read$1; + to_read = len; for(;;){ /*<>*/ if(0 !== to_read){ var @@ -12846,7 +12857,7 @@ } } /*<>*/ b[2] = b[2] + already_read | 0; - /*<>*/ if(already_read < to_read$1) + /*<>*/ if(already_read < len) /*<>*/ throw caml_maybe_attach_backtrace (Stdlib[12], 1); /*<>*/ return 0; @@ -13422,7 +13433,7 @@ var split = split_from_parent[1], ki = /*<>*/ [0, k, split]; - for(;;){ + /*<>*/ for(;;){ var l = /*<>*/ caml_call1(Stdlib_Atomic[3], parent_keys); /*<>*/ if @@ -14573,9 +14584,9 @@ { b: { - var i = /*<>*/ 1; + var i = /*<>*/ 1; for(;;){ - /*<>*/ if(i >= 256) break a; + if(i >= 256) break a; /*<>*/ if ( /*<>*/ is_in_char_set (set, @@ -17999,14 +18010,14 @@ var rest = fmt[1], x = /*<>*/ make_iprintf(k, o, rest); - /*<>*/ return function(_aL_){ + /*<>*/ return function(param){ /*<>*/ return x;} /*<>*/ ; case 1: var rest$0 = /*<>*/ fmt[1], x$0 = /*<>*/ make_iprintf(k, o, rest$0); - /*<>*/ return function(_aL_){ + /*<>*/ return function(param){ /*<>*/ return x$0;} /*<>*/ ; case 2: var match = /*<>*/ fmt[1]; @@ -18015,7 +18026,7 @@ rest$1 = fmt[2], x$1 = /*<>*/ make_iprintf(k, o, rest$1); - /*<>*/ return function(_aL_){ + /*<>*/ return function(param){ /*<>*/ return x$1;} /*<>*/ ; } /*<>*/ if(0 === match[0]){ @@ -18023,7 +18034,7 @@ rest$2 = fmt[2], x$2 = /*<>*/ make_iprintf(k, o, rest$2); - /*<>*/ return function(_aL_){ + /*<>*/ return function(param){ /*<>*/ return x$2;} /*<>*/ ; } var @@ -18031,10 +18042,10 @@ x$3 = /*<>*/ make_iprintf(k, o, rest$3), x$4 = - /*<>*/ function(_aL_){ + /*<>*/ function(param){ /*<>*/ return x$3; }; - /*<>*/ return function(_aL_){ + /*<>*/ return function(param){ /*<>*/ return x$4;} /*<>*/ ; case 3: var match$0 = /*<>*/ fmt[1]; @@ -18043,7 +18054,7 @@ rest$4 = fmt[2], x$5 = /*<>*/ make_iprintf(k, o, rest$4); - /*<>*/ return function(_aL_){ + /*<>*/ return function(param){ /*<>*/ return x$5;} /*<>*/ ; } /*<>*/ if(0 === match$0[0]){ @@ -18051,7 +18062,7 @@ rest$5 = fmt[2], x$6 = /*<>*/ make_iprintf(k, o, rest$5); - /*<>*/ return function(_aL_){ + /*<>*/ return function(param){ /*<>*/ return x$6;} /*<>*/ ; } var @@ -18059,10 +18070,10 @@ x$7 = /*<>*/ make_iprintf(k, o, rest$6), x$8 = - /*<>*/ function(_aL_){ + /*<>*/ function(param){ /*<>*/ return x$7; }; - /*<>*/ return function(_aL_){ + /*<>*/ return function(param){ /*<>*/ return x$8;} /*<>*/ ; case 4: var @@ -18106,7 +18117,7 @@ rest$12 = fmt[2], x$9 = /*<>*/ make_iprintf(k, o, rest$12); - /*<>*/ return function(_aL_){ + /*<>*/ return function(param){ /*<>*/ return x$9;} /*<>*/ ; } /*<>*/ if(0 === match$1[0]){ @@ -18114,7 +18125,7 @@ rest$13 = fmt[2], x$10 = /*<>*/ make_iprintf(k, o, rest$13); - /*<>*/ return function(_aL_){ + /*<>*/ return function(param){ /*<>*/ return x$10;} /*<>*/ ; } var @@ -18122,10 +18133,10 @@ x$11 = /*<>*/ make_iprintf(k, o, rest$14), x$12 = - /*<>*/ function(_aL_){ + /*<>*/ function(param){ /*<>*/ return x$11; }; - /*<>*/ return function(_aL_){ + /*<>*/ return function(param){ /*<>*/ return x$12;} /*<>*/ ; case 10: var rest$15 = /*<>*/ fmt[1]; @@ -18144,7 +18155,7 @@ rest$18 = /*<>*/ fmt[3], x$13 = /*<>*/ make_iprintf(k, o, rest$18); - /*<>*/ return function(_aL_){ + /*<>*/ return function(param){ /*<>*/ return x$13;} /*<>*/ ; case 14: var @@ -18165,17 +18176,17 @@ x$14 = /*<>*/ make_iprintf(k, o, rest$20), x$15 = - /*<>*/ function(_aL_){ + /*<>*/ function(param){ /*<>*/ return x$14; }; - /*<>*/ return function(_aL_){ + /*<>*/ return function(param){ /*<>*/ return x$15;} /*<>*/ ; case 16: var rest$21 = /*<>*/ fmt[1], x$16 = /*<>*/ make_iprintf(k, o, rest$21); - /*<>*/ return function(_aL_){ + /*<>*/ return function(param){ /*<>*/ return x$16;} /*<>*/ ; case 17: var rest$22 = /*<>*/ fmt[2]; @@ -18218,21 +18229,21 @@ rest$25 = /*<>*/ fmt[3], x$17 = /*<>*/ make_iprintf(k, o, rest$25); - /*<>*/ return function(_aL_){ + /*<>*/ return function(param){ /*<>*/ return x$17;} /*<>*/ ; case 21: var rest$26 = /*<>*/ fmt[2], x$18 = /*<>*/ make_iprintf(k, o, rest$26); - /*<>*/ return function(_aL_){ + /*<>*/ return function(param){ /*<>*/ return x$18;} /*<>*/ ; case 22: var rest$27 = /*<>*/ fmt[1], x$19 = /*<>*/ make_iprintf(k, o, rest$27); - /*<>*/ return function(_aL_){ + /*<>*/ return function(param){ /*<>*/ return x$19;} /*<>*/ ; case 23: var @@ -18268,71 +18279,71 @@ if(typeof prec !== "number"){ var x$2 = /*<>*/ make_iprintf(k, o, fmt); - /*<>*/ return function(_aL_){ + /*<>*/ return function(param){ /*<>*/ return x$2;} /*<>*/ ; } /*<>*/ if(prec){ var x = /*<>*/ make_iprintf(k, o, fmt), x$0 = - /*<>*/ function(_aL_){ + /*<>*/ function(param){ /*<>*/ return x; }; - /*<>*/ return function(_aL_){ + /*<>*/ return function(param){ /*<>*/ return x$0;} /*<>*/ ; } var x$1 = /*<>*/ make_iprintf(k, o, fmt); - /*<>*/ return function(_aL_){ + /*<>*/ return function(param){ /*<>*/ return x$1;} /*<>*/ ; } /*<>*/ if(0 === pad[0]){ if(typeof prec !== "number"){ var x$6 = /*<>*/ make_iprintf(k, o, fmt); - /*<>*/ return function(_aL_){ + /*<>*/ return function(param){ /*<>*/ return x$6;} /*<>*/ ; } /*<>*/ if(prec){ var x$3 = /*<>*/ make_iprintf(k, o, fmt), x$4 = - /*<>*/ function(_aL_){ + /*<>*/ function(param){ /*<>*/ return x$3; }; - /*<>*/ return function(_aL_){ + /*<>*/ return function(param){ /*<>*/ return x$4;} /*<>*/ ; } var x$5 = /*<>*/ make_iprintf(k, o, fmt); - /*<>*/ return function(_aL_){ + /*<>*/ return function(param){ /*<>*/ return x$5;} /*<>*/ ; } /*<>*/ if(typeof prec !== "number"){ var x$12 = /*<>*/ make_iprintf(k, o, fmt), x$13 = - /*<>*/ function(_aL_){ + /*<>*/ function(param){ /*<>*/ return x$12; }; - /*<>*/ return function(_aL_){ + /*<>*/ return function(param){ /*<>*/ return x$13;} /*<>*/ ; } /*<>*/ if(prec){ var x$7 = /*<>*/ make_iprintf(k, o, fmt), x$8 = - /*<>*/ function(_aL_){ + /*<>*/ function(param){ /*<>*/ return x$7; }, x$9 = - /*<>*/ function(_aL_){ + /*<>*/ function(param){ /*<>*/ return x$8; }; - /*<>*/ return function(_aL_){ + /*<>*/ return function(param){ /*<>*/ return x$9;} /*<>*/ ; } var x$10 = /*<>*/ make_iprintf(k, o, fmt); - function x$11(_aL_){ /*<>*/ return x$10;} - /*<>*/ return function(_aL_){ + function x$11(param){ /*<>*/ return x$10;} + /*<>*/ return function(param){ /*<>*/ return x$11;} /*<>*/ ; /*<>*/ } function fn_of_custom_arity$0(counter, k, o, fmt, param){ @@ -18342,7 +18353,7 @@ x = /*<>*/ fn_of_custom_arity (k, o, fmt, arity); - /*<>*/ return function(_aL_){ + /*<>*/ return function(param){ /*<>*/ return x;} /*<>*/ ; } /*<>*/ if(counter >= 50) @@ -18729,21 +18740,21 @@ /*<>*/ invalid_format_message (end_ind, cst_unexpected_end_of_format); var - match$0 = + match$1 = /*<>*/ 95 === caml_string_get(str, str_ind$2) ? /*<>*/ parse_flags (str_ind, str_ind$2 + 1 | 0, end_ind, 1) : /*<>*/ parse_flags (str_ind, str_ind$2, end_ind, 0), - fmt_rest = /*<>*/ match$0[1]; + fmt_rest = /*<>*/ match$1[1]; /*<>*/ return add_literal (lit_start, str_ind, fmt_rest) /*<>*/ ; } var str_ind$0 = /*<>*/ str_ind + 1 | 0; a: if(str_ind$0 === end_ind) - var match$1 = /*<>*/ _N_; + var match$0 = /*<>*/ _N_; else{ var c = @@ -18756,7 +18767,7 @@ switch(switcher){ case 0: var - match$1 = + match$0 = /*<>*/ parse_tag (1, str_ind$0 + 1 | 0, end_ind); break a; @@ -18766,7 +18777,7 @@ /*<>*/ parse (str_ind$0 + 1 | 0, end_ind) [1], - match$1 = + match$0 = /*<>*/ [0, [17, 1, fmt_rest$2]]; break a; } @@ -18775,7 +18786,7 @@ /*<>*/ switch(c - 91 | 0){ case 0: var - match$1 = + match$0 = /*<>*/ parse_tag (0, str_ind$0 + 1 | 0, end_ind); break a; @@ -18785,7 +18796,7 @@ /*<>*/ parse (str_ind$0 + 1 | 0, end_ind) [1], - match$1 = + match$0 = /*<>*/ [0, [17, 0, fmt_rest$3]]; break a; } @@ -18797,7 +18808,7 @@ /*<>*/ parse (str_ind$0 + 1 | 0, end_ind) [1], - match$1 = + match$0 = /*<>*/ [0, [17, 3, fmt_rest$4]]; break a; } @@ -18809,7 +18820,7 @@ /*<>*/ parse (str_ind$0 + 1 | 0, end_ind) [1], - match$1 = + match$0 = /*<>*/ [0, [17, _O_, fmt_rest$5]]; break a; case 5: @@ -18825,7 +18836,7 @@ /*<>*/ parse (str_ind$0 + 2 | 0, end_ind) [1], - match$1 = + match$0 = /*<>*/ [0, [17, 6, fmt_rest$6]]; break a; } @@ -18833,7 +18844,7 @@ fmt_rest$7 = /*<>*/ parse(str_ind$0, end_ind) [1], - match$1 = + match$0 = /*<>*/ [0, [12, 64, fmt_rest$7]]; break a; case 12: @@ -18842,7 +18853,7 @@ /*<>*/ parse (str_ind$0 + 1 | 0, end_ind) [1], - match$1 = + match$0 = /*<>*/ [0, [17, _P_, fmt_rest$8]]; break a; case 14: @@ -18851,7 +18862,7 @@ /*<>*/ parse (str_ind$0 + 1 | 0, end_ind) [1], - match$1 = + match$0 = /*<>*/ [0, [17, 4, fmt_rest$9]]; break a; case 27: @@ -18968,7 +18979,7 @@ fmt_rest$12 = /*<>*/ parse(next_ind, end_ind) [1], - match$1 = + match$0 = /*<>*/ [0, [17, formatting_lit$0, fmt_rest$12]]; break a; @@ -18976,7 +18987,7 @@ var str_ind$4 = /*<>*/ str_ind$0 + 1 | 0; - try{ + /*<>*/ try{ var str_ind_1$0 = /*<>*/ parse_spaces @@ -19027,7 +19038,7 @@ throw caml_maybe_attach_backtrace(exn$0, 0); var match$5 = /*<>*/ 0; } - /*<>*/ if(match$5){ + /*<>*/ if(match$5){ var match$6 = match$5[1], formatting_lit$1 = match$6[2], @@ -19036,7 +19047,7 @@ /*<>*/ parse (next_ind$0, end_ind) [1], - match$1 = + match$0 = /*<>*/ [0, [17, formatting_lit$1, fmt_rest$13]]; break a; @@ -19045,7 +19056,7 @@ fmt_rest$14 = /*<>*/ parse(str_ind$4, end_ind) [1], - match$1 = + match$0 = /*<>*/ [0, [17, _Q_, fmt_rest$14]]; break a; @@ -19055,7 +19066,7 @@ /*<>*/ parse (str_ind$0 + 1 | 0, end_ind) [1], - match$1 = + match$0 = /*<>*/ [0, [17, 2, fmt_rest$10]]; break a; case 32: @@ -19064,7 +19075,7 @@ /*<>*/ parse (str_ind$0 + 1 | 0, end_ind) [1], - match$1 = + match$0 = /*<>*/ [0, [17, 5, fmt_rest$11]]; break a; } @@ -19074,10 +19085,10 @@ /*<>*/ parse (str_ind$0 + 1 | 0, end_ind) [1], - match$1 = + match$0 = /*<>*/ [0, [17, [2, c], fmt_rest$1]]; } - var fmt_rest$0 = /*<>*/ match$1[1]; + var fmt_rest$0 = /*<>*/ match$0[1]; /*<>*/ return add_literal (lit_start, str_ind, fmt_rest$0) /*<>*/ ; } @@ -19594,137 +19605,6 @@ /*<>*/ [0, [3, pad$7, fmt_rest$16]]; break a; - case 97: - var - fmt_rest$20 = - /*<>*/ parse(str_ind, end_ind)[1], - fmt_result = - /*<>*/ [0, [15, fmt_rest$20]]; - break a; - case 99: - var - char_format = - /*<>*/ function(fmt_rest){ - /*<>*/ return get_ign(0) - ? [0, [23, 0, fmt_rest]] - : [0, [0, fmt_rest]] /*<>*/ ; - }, - fmt_rest$21 = - /*<>*/ parse(str_ind, end_ind)[1], - match$7 = /*<>*/ get_pad_opt(99); - /*<>*/ if(! match$7){ - var - fmt_result = - /*<>*/ /*<>*/ char_format - (fmt_rest$21); - break a; - } - var n = /*<>*/ match$7[1]; - if(0 === n){ - /*<>*/ if(get_ign(0)){ - var - fmt_result = - /*<>*/ [0, - [23, 3, fmt_rest$21]]; - break a; - } - var - fmt_result = - /*<>*/ [0, [22, fmt_rest$21]]; - break a; - } - /*<>*/ if(legacy_behavior$0){ - var - fmt_result = - /*<>*/ /*<>*/ char_format - (fmt_rest$21); - break a; - } - var - fmt_result = - /*<>*/ invalid_format_message - (str_ind, cst_non_zero_widths_are_unsupp); - break a; - case 114: - var - fmt_rest$22 = - /*<>*/ parse(str_ind, end_ind)[1]; - /*<>*/ if(get_ign(0)){ - var - fmt_result = - /*<>*/ [0, [23, 2, fmt_rest$22]]; - break a; - } - var - fmt_result = - /*<>*/ [0, [19, fmt_rest$22]]; - break a; - case 115: - var - pad$9 = - /*<>*/ /*<>*/ check_no_0 - (symb, /*<>*/ get_padprec(0)), - fmt_rest$23 = - /*<>*/ parse(str_ind, end_ind)[1]; - /*<>*/ if(get_ign(0)){ - var - ignored$10 = - /*<>*/ [0, get_padprec_opt(95)], - fmt_result = - /*<>*/ [0, - [23, ignored$10, fmt_rest$23]]; - break a; - } - var - match$8 = - /*<>*/ make_padding_fmt_ebb - (pad$9, fmt_rest$23), - fmt_rest$24 = /*<>*/ match$8[2], - pad$10 = match$8[1], - fmt_result = - /*<>*/ [0, - [2, pad$10, fmt_rest$24]]; - break a; - case 116: - var - fmt_rest$25 = - /*<>*/ parse(str_ind, end_ind)[1], - fmt_result = - /*<>*/ [0, [16, fmt_rest$25]]; - break a; - case 123: - var - sub_end$0 = - /*<>*/ search_subformat_end - (str_ind, end_ind, 125), - sub_fmt$0 = - /*<>*/ parse(str_ind, sub_end$0) - [1], - fmt_rest$26 = - /*<>*/ parse - (sub_end$0 + 2 | 0, end_ind) - [1], - sub_fmtty$0 = - /*<>*/ fmtty_of_fmt(sub_fmt$0); - /*<>*/ if(get_ign(0)){ - var - ignored$11 = - /*<>*/ [8, - get_pad_opt(95), - sub_fmtty$0], - fmt_result = - /*<>*/ [0, - [23, ignored$11, fmt_rest$26]]; - break a; - } - var - fmt_result = - /*<>*/ [0, - [13, - /*<>*/ get_pad_opt(123), - sub_fmtty$0, - fmt_rest$26]]; - break a; case 91: /*<>*/ if(str_ind === end_ind) /*<>*/ invalid_format_message @@ -19845,9 +19725,9 @@ return caml_trampoline_return (parse_char_set_content, [0, _aC_, end_ind]) /*<>*/ ; var - counter$1 = + counter$2 = /*<>*/ counter + 1 | 0; - return parse_char_set_content(counter$1, _aC_, end_ind) /*<>*/ ; + return parse_char_set_content(counter$2, _aC_, end_ind) /*<>*/ ; } /*<>*/ if(93 === c$1){ /*<>*/ add_in_char_set @@ -19864,9 +19744,9 @@ return caml_trampoline_return (parse_char_set_content, [0, _aD_, end_ind]) /*<>*/ ; var - counter$0 = + counter$1 = /*<>*/ counter + 1 | 0; - return parse_char_set_content(counter$0, _aD_, end_ind) /*<>*/ ; + return parse_char_set_content(counter$1, _aD_, end_ind) /*<>*/ ; } /*<>*/ if(37 === c){ /*<>*/ add_in_char_set @@ -19878,9 +19758,9 @@ return caml_trampoline_return (parse_char_set_content, [0, _aB_, end_ind]) /*<>*/ ; var - counter$2 = + counter$0 = /*<>*/ counter + 1 | 0; - return parse_char_set_content(counter$2, _aB_, end_ind) /*<>*/ ; + return parse_char_set_content(counter$0, _aB_, end_ind) /*<>*/ ; } } /*<>*/ if(37 === c) @@ -19954,6 +19834,137 @@ char_set$1, fmt_rest$19]]; break a; + case 97: + var + fmt_rest$20 = + /*<>*/ parse(str_ind, end_ind)[1], + fmt_result = + /*<>*/ [0, [15, fmt_rest$20]]; + break a; + case 99: + var + char_format = + /*<>*/ function(fmt_rest){ + /*<>*/ return get_ign(0) + ? [0, [23, 0, fmt_rest]] + : [0, [0, fmt_rest]] /*<>*/ ; + }, + fmt_rest$21 = + /*<>*/ parse(str_ind, end_ind)[1], + match$7 = /*<>*/ get_pad_opt(99); + /*<>*/ if(! match$7){ + var + fmt_result = + /*<>*/ /*<>*/ char_format + (fmt_rest$21); + break a; + } + var n = /*<>*/ match$7[1]; + if(0 === n){ + /*<>*/ if(get_ign(0)){ + var + fmt_result = + /*<>*/ [0, + [23, 3, fmt_rest$21]]; + break a; + } + var + fmt_result = + /*<>*/ [0, [22, fmt_rest$21]]; + break a; + } + /*<>*/ if(legacy_behavior$0){ + var + fmt_result = + /*<>*/ /*<>*/ char_format + (fmt_rest$21); + break a; + } + var + fmt_result = + /*<>*/ /*<>*/ invalid_format_message + (str_ind, cst_non_zero_widths_are_unsupp); + break a; + case 114: + var + fmt_rest$22 = + /*<>*/ parse(str_ind, end_ind)[1]; + /*<>*/ if(get_ign(0)){ + var + fmt_result = + /*<>*/ [0, [23, 2, fmt_rest$22]]; + break a; + } + var + fmt_result = + /*<>*/ [0, [19, fmt_rest$22]]; + break a; + case 115: + var + pad$9 = + /*<>*/ /*<>*/ check_no_0 + (symb, /*<>*/ get_padprec(0)), + fmt_rest$23 = + /*<>*/ parse(str_ind, end_ind)[1]; + /*<>*/ if(get_ign(0)){ + var + ignored$10 = + /*<>*/ [0, get_padprec_opt(95)], + fmt_result = + /*<>*/ [0, + [23, ignored$10, fmt_rest$23]]; + break a; + } + var + match$8 = + /*<>*/ make_padding_fmt_ebb + (pad$9, fmt_rest$23), + fmt_rest$24 = /*<>*/ match$8[2], + pad$10 = match$8[1], + fmt_result = + /*<>*/ [0, + [2, pad$10, fmt_rest$24]]; + break a; + case 116: + var + fmt_rest$25 = + /*<>*/ parse(str_ind, end_ind)[1], + fmt_result = + /*<>*/ [0, [16, fmt_rest$25]]; + break a; + case 123: + var + sub_end$0 = + /*<>*/ search_subformat_end + (str_ind, end_ind, 125), + sub_fmt$0 = + /*<>*/ parse(str_ind, sub_end$0) + [1], + fmt_rest$26 = + /*<>*/ parse + (sub_end$0 + 2 | 0, end_ind) + [1], + sub_fmtty$0 = + /*<>*/ fmtty_of_fmt(sub_fmt$0); + /*<>*/ if(get_ign(0)){ + var + ignored$11 = + /*<>*/ [8, + get_pad_opt(95), + sub_fmtty$0], + fmt_result = + /*<>*/ [0, + [23, ignored$11, fmt_rest$26]]; + break a; + } + var + fmt_result = + /*<>*/ [0, + [13, + /*<>*/ get_pad_opt(123), + sub_fmtty$0, + fmt_rest$26]]; + break a; case 66: case 98: var @@ -21324,7 +21335,7 @@ var f$0 = /*<>*/ param[1], arg = /*<>*/ get_arg$0(0); - /*<>*/ try{ + /*<>*/ try{ var _I_ = /*<>*/ [0, caml_call1(Stdlib[32], arg)], match = _I_; @@ -22214,7 +22225,8 @@ /*<>*/ return 0; var backtrace = /*<>*/ match[1], - i = /*<>*/ backtrace.length - 2 | 0; + i$1 = /*<>*/ backtrace.length - 2 | 0, + i = /*<>*/ i$1; for(;;){ /*<>*/ if(-1 === i) var _y_ = /*<>*/ 0; @@ -22319,7 +22331,7 @@ "Fatal error in uncaught exception handler: exception %s\n"]; function handle_uncaught_exception(exn$1, debugger_in_use){ /*<>*/ try{ - try{ + /*<>*/ try{ var raw_backtrace = debugger_in_use @@ -22966,7 +22978,10 @@ } var buf$2 = /*<>*/ ensure(buf, nread, 65537); /*<>*/ runtime.caml_bytes_set(buf$2, nread, c); - var buf$0 = /*<>*/ buf$2, ofs = nread + 1 | 0; + var + ofs$1 = /*<>*/ nread + 1 | 0, + buf$0 = buf$2, + ofs = ofs$1; for(;;){ var buf$1 = /*<>*/ ensure(buf$0, ofs, chunk_size), @@ -24508,9 +24523,9 @@ /*<>*/ caml_int64_of_int32(max))) /*<>*/ ; }; function float$(s, bound){ - /*<>*/ for(;;){ + /*<>*/ for(;;){ var - b = /*<>*/ caml_lxm_next(s), + b = caml_lxm_next(s), n = /*<>*/ caml_int64_shift_right_unsigne(b, 11); /*<>*/ if(caml_notequal(n, _h_)) /*<>*/ return runtime.caml_int64_to_float(n) @@ -24756,9 +24771,9 @@ var Stdlib_String = global_data.Stdlib__String; function ongoing_traversal(h){ var - _F_ = /*<>*/ h.length - 1 < 4 ? 1 : 0, - _G_ = _F_ || (h[4] < 0 ? 1 : 0); - return _G_; + _E_ = /*<>*/ h.length - 1 < 4 ? 1 : 0, + _F_ = _E_ || (h[4] < 0 ? 1 : 0); + return _F_; /*<>*/ } function flip_ongoing_traversal(h){ /*<>*/ h[4] = - h[4] | 0; @@ -24822,24 +24837,24 @@ s = /*<>*/ power_2_above(16, initial_size); /*<>*/ if(random) var - _F_ = + _E_ = /*<>*/ caml_call1(Stdlib_Domain[11][2], prng_key), seed = /*<>*/ /*<>*/ caml_call1 - (Stdlib_Random[19][4], _F_); + (Stdlib_Random[19][4], _E_); else var seed = /*<>*/ 0; /*<>*/ return [0, 0, caml_array_make(s, 0), seed, s] /*<>*/ ; /*<>*/ } function clear(h){ - var _F_ = /*<>*/ 0 < h[1] ? 1 : 0; - return _F_ + var _E_ = /*<>*/ 0 < h[1] ? 1 : 0; + return _E_ ? (h [1] = 0, /*<>*/ caml_call4 (Stdlib_Array[8], h[2], 0, h[2].length - 1, 0)) - : _F_ /*<>*/ ; + : _E_ /*<>*/ ; } function reset(h){ var len = /*<>*/ h[2].length - 1; @@ -24860,12 +24875,12 @@ key = /*<>*/ param[1], data = param[2], next = param[3], - r = /*<>*/ [0, key, data, next], - prec = /*<>*/ r, + prec$1 = /*<>*/ [0, key, data, next], + prec = /*<>*/ prec$1, param$0 = next; for(;;){ /*<>*/ if(! param$0) - /*<>*/ return r; + /*<>*/ return prec$1; var key$0 = /*<>*/ param$0[1], data$0 = param$0[2], @@ -24878,10 +24893,10 @@ /*<>*/ } function copy(h){ var - _D_ = /*<>*/ h[4], - _E_ = h[3], - _F_ = caml_call2(Stdlib_Array[14], copy_bucketlist, h[2]); - /*<>*/ return [0, h[1], _F_, _E_, _D_]; + _C_ = /*<>*/ h[4], + _D_ = h[3], + _E_ = caml_call2(Stdlib_Array[14], copy_bucketlist, h[2]); + /*<>*/ return [0, h[1], _E_, _D_, _C_]; /*<>*/ } function length(h){ /*<>*/ return h[1]; @@ -24890,17 +24905,16 @@ var nsize = /*<>*/ ndata.length - 1, ndata_tail = /*<>*/ caml_array_make(nsize, 0), - _x_ = /*<>*/ odata.length - 2 | 0, - _A_ = 0; - if(_x_ >= 0){ - var i$0 = _A_; + _w_ = /*<>*/ odata.length - 2 | 0, + _z_ = 0; + if(_w_ >= 0){ + var i$0 = _z_; for(;;){ var - cell = - /*<>*/ /*<>*/ caml_check_bound - (odata, i$0) - [i$0 + 1]; - /*<>*/ for(;;){ + cell$1 = + /*<>*/ caml_check_bound(odata, i$0)[i$0 + 1], + cell = /*<>*/ cell$1; + for(;;){ /*<>*/ if(! cell) break; var key = cell[1], @@ -24919,39 +24933,39 @@ = cell$0; /*<>*/ cell = next; } - var _D_ = /*<>*/ i$0 + 1 | 0; - if(_x_ === i$0) break; - i$0 = _D_; + var _C_ = /*<>*/ i$0 + 1 | 0; + if(_w_ === i$0) break; + i$0 = _C_; } } /*<>*/ if(inplace){ - var _y_ = /*<>*/ nsize - 1 | 0, _B_ = 0; - if(_y_ >= 0){ - var i = _B_; + var _x_ = /*<>*/ nsize - 1 | 0, _A_ = 0; + if(_x_ >= 0){ + var i = _A_; for(;;){ var match$0 = /*<>*/ caml_check_bound(ndata_tail, i)[i + 1]; /*<>*/ if(match$0) /*<>*/ match$0[3] = 0; - var _C_ = /*<>*/ i + 1 | 0; - if(_y_ === i) break; - i = _C_; + var _B_ = /*<>*/ i + 1 | 0; + if(_x_ === i) break; + i = _B_; } } - var _z_ = /*<>*/ 0; + var _y_ = /*<>*/ 0; } else - var _z_ = /*<>*/ inplace; - return _z_; + var _y_ = /*<>*/ inplace; + return _y_; /*<>*/ } function resize(indexfun, h){ var odata = /*<>*/ h[2], osize = /*<>*/ odata.length - 1, nsize = /*<>*/ osize * 2 | 0, - _x_ = /*<>*/ nsize < Stdlib_Sys[13] ? 1 : 0; - if(! _x_) return _x_; + _w_ = /*<>*/ nsize < Stdlib_Sys[13] ? 1 : 0; + if(! _w_) return _w_; var ndata = /*<>*/ caml_array_make(nsize, 0), inplace = /*<>*/ 1 - ongoing_traversal(h); @@ -24967,9 +24981,9 @@ /*<>*/ if(1 - old_trav) /*<>*/ flip_ongoing_traversal(h); /*<>*/ try{ - var d = h[2], _t_ = /*<>*/ d.length - 2 | 0, _v_ = 0; - if(_t_ >= 0){ - var i = _v_; + var d = h[2], _s_ = /*<>*/ d.length - 2 | 0, _u_ = 0; + if(_s_ >= 0){ + var i = _u_; for(;;){ var param = @@ -24982,15 +24996,15 @@ /*<>*/ caml_call2(f, key, data); /*<>*/ param = next; } - var _x_ = /*<>*/ i + 1 | 0; - if(_t_ === i) break; - i = _x_; + var _w_ = /*<>*/ i + 1 | 0; + if(_s_ === i) break; + i = _w_; } } var - _u_ = /*<>*/ 1 - old_trav, - _w_ = _u_ ? /*<>*/ flip_ongoing_traversal(h) : _u_; - return _w_; + _t_ = /*<>*/ 1 - old_trav, + _v_ = _t_ ? /*<>*/ flip_ongoing_traversal(h) : _t_; + return _v_; } catch(exn$0){ var exn = /*<>*/ caml_wrap_exception(exn$0); @@ -25007,9 +25021,9 @@ /*<>*/ if(1 - old_trav) /*<>*/ flip_ongoing_traversal(h); /*<>*/ try{ - var _p_ = d.length - 2 | 0, _r_ = 0; - if(_p_ >= 0){ - var i = _r_; + var _o_ = d.length - 2 | 0, _q_ = 0; + if(_o_ >= 0){ + var i = _q_; for(;;){ var slot$0 = /*<>*/ caml_check_bound(h[2], i)[i + 1], @@ -25041,15 +25055,15 @@ /*<>*/ prec[3] = 0; else /*<>*/ caml_check_bound(h[2], i)[i + 1] = 0; - var _t_ = /*<>*/ i + 1 | 0; - if(_p_ === i) break; - i = _t_; + var _s_ = /*<>*/ i + 1 | 0; + if(_o_ === i) break; + i = _s_; } } var - _q_ = /*<>*/ 1 - old_trav, - _s_ = _q_ ? /*<>*/ flip_ongoing_traversal(h) : _q_; - return _s_; + _p_ = /*<>*/ 1 - old_trav, + _r_ = _p_ ? /*<>*/ flip_ongoing_traversal(h) : _p_; + return _r_; } catch(exn$0){ var exn = /*<>*/ caml_wrap_exception(exn$0); @@ -25073,12 +25087,10 @@ var i = _m_; for(;;){ var - _o_ = /*<>*/ accu$1[1], - b = - /*<>*/ /*<>*/ caml_check_bound - (d, i) - [i + 1], - accu = /*<>*/ _o_; + accu$2 = /*<>*/ accu$1[1], + b$0 = /*<>*/ caml_check_bound(d, i)[i + 1], + b = /*<>*/ b$0, + accu = accu$2; for(;;){ /*<>*/ if(! b) break; var @@ -25090,9 +25102,9 @@ accu = accu$0; } /*<>*/ accu$1[1] = accu; - var _p_ = i + 1 | 0; + var _o_ = i + 1 | 0; if(_l_ === i) break; - i = _p_; + i = _o_; } } /*<>*/ if(1 - old_trav) @@ -26107,9 +26119,10 @@ live = /*<>*/ count_bucket(0, bucket, 0); /*<>*/ if(live <= prev_len){ var + j$2 = /*<>*/ length(bucket) - 1 | 0, i$0 = /*<>*/ 0, - j = /*<>*/ length(bucket) - 1 | 0; - /*<>*/ for(;;){ + j = j$2; + for(;;){ /*<>*/ if(prev_len > j) break; /*<>*/ if(check(bucket, i$0)){ var i$1 = /*<>*/ i$0 + 1 | 0; @@ -26891,7 +26904,7 @@ /*<>*/ return pp_close_stag(state, 0) /*<>*/ ; }, state[4]); - /*<>*/ for(;;){ + /*<>*/ for(;;){ if(1 >= state[14]){ /*<>*/ state[13] = pp_infinity; /*<>*/ advance_left(state); @@ -27562,10 +27575,10 @@ /*<>*/ caml_call3 (Stdlib_String[16], s, i, n)]) /*<>*/ ; } - function g(_D_){ + function g(param){ /*<>*/ return add_symbolic_output_item(sob, 0); } - function h(_D_){ + function h(param){ /*<>*/ return add_symbolic_output_item(sob, 1); } function i(n){ @@ -29100,7 +29113,7 @@ (Stdlib_Printf[4], _k_, c$0, basis)) /*<>*/ ; var width$3 = /*<>*/ store_char(width$2, ib, c$0), - width = /*<>*/ width$3; + width = /*<>*/ width$3; for(;;){ /*<>*/ if(0 === width) /*<>*/ return width; @@ -29155,21 +29168,13 @@ } function scan_int_conversion(conv, width$1, ib){ /*<>*/ switch(conv){ - case 1: - /*<>*/ return scan_optionally_signed_decimal - (width$1, ib) /*<>*/ ; - case 4: - /*<>*/ return scan_decimal_digit_plus(width$1, ib) /*<>*/ ; case 0: /*<>*/ return scan_digit_plus (cst_binary, is_binary_digit, width$1, ib) /*<>*/ ; - case 3: - /*<>*/ return scan_digit_plus - (cst_octal, is_octal_digit, width$1, ib) /*<>*/ ; - case 5: - /*<>*/ return scan_digit_plus - (cst_hexadecimal, is_hexa_digit, width$1, ib) /*<>*/ ; - default: + case 1: + /*<>*/ return scan_optionally_signed_decimal + (width$1, ib) /*<>*/ ; + case 2: var width$0 = /*<>*/ scan_sign(width$1, ib), c = /*<>*/ checked_peek_char(ib); @@ -29208,6 +29213,14 @@ ib) /*<>*/ ; } /*<>*/ return scan_decimal_digit_star(width, ib) /*<>*/ ; + case 3: + /*<>*/ return scan_digit_plus + (cst_octal, is_octal_digit, width$1, ib) /*<>*/ ; + case 4: + /*<>*/ return scan_decimal_digit_plus(width$1, ib) /*<>*/ ; + default: + /*<>*/ return scan_digit_plus + (cst_hexadecimal, is_hexa_digit, width$1, ib) /*<>*/ ; } } function scan_fractional_part(width, ib){ @@ -29342,7 +29355,7 @@ else if(32 < _ad_ - 1 >>> 0){var width$5 = width$4; break b;} var width$5 = - /*<>*/ scan_digit_plus + /*<>*/ /*<>*/ scan_digit_plus (cst_hexadecimal, is_hexa_digit, width$4, ib); } /*<>*/ if @@ -29536,7 +29549,8 @@ } var width$5 = - /*<>*/ bad_input(cst_no_dot_or_exponent_part_fo); + /*<>*/ /*<>*/ bad_input + (cst_no_dot_or_exponent_part_fo); } /*<>*/ if (0 !== width$5 && ! /*<>*/ end_of_input(ib)){ @@ -30584,11 +30598,11 @@ case 21: var rest$24 = /*<>*/ fmt[2], counter = fmt[1]; /*<>*/ switch(counter){ + case 0: + var count = /*<>*/ ib[5]; break; case 1: var count = /*<>*/ char_count(ib); break; - case 2: - var count = /*<>*/ ib[6]; break; - default: var count = /*<>*/ ib[5]; + default: var count = /*<>*/ ib[6]; } /*<>*/ return [0, count, @@ -30659,7 +30673,7 @@ var str = /*<>*/ param[2], fmt = param[1]; function k(readers, f$1){ /*<>*/ caml_call1(Stdlib_Buffer[9], ib[8]); - try{ + /*<>*/ try{ var args$1 = /*<>*/ make_scanf(ib, fmt, readers), f = f$1, @@ -30682,7 +30696,7 @@ } /*<>*/ return caml_call2(ef, ib, exc) /*<>*/ ; } - /*<>*/ for(;;){ + /*<>*/ for(;;){ /*<>*/ if(! args) /*<>*/ return caml_call1(af, f); var @@ -34141,7 +34155,7 @@ /*<>*/ return 0; /*<>*/ } function remove(b, k){ - var l = /*<>*/ b[1], acc = 0; + var l$0 = /*<>*/ b[1], l = l$0, acc = 0; for(;;){ /*<>*/ if(! l) /*<>*/ return 0; @@ -34359,7 +34373,7 @@ /*<>*/ return 0; /*<>*/ } function remove$0(b, k1, k2){ - var l = /*<>*/ b[1], acc = 0; + var l$0 = /*<>*/ b[1], l = l$0, acc = 0; for(;;){ /*<>*/ if(! l) /*<>*/ return 0; @@ -34663,7 +34677,7 @@ } /*<>*/ } function remove$1(b, k){ - var l = /*<>*/ b[1], acc = 0; + var l$0 = /*<>*/ b[1], l = l$0, acc = 0; for(;;){ /*<>*/ if(! l) /*<>*/ return 0; @@ -34820,7 +34834,9 @@ function generic_basename(is_dir_sep, current_dir_name, name){ /*<>*/ if(name === cst$19) /*<>*/ return current_dir_name; - var n = /*<>*/ caml_ml_string_length(name) - 1 | 0; + var + n$3 = /*<>*/ caml_ml_string_length(name) - 1 | 0, + n = n$3; for(;;){ /*<>*/ if(0 > n) /*<>*/ return caml_call3 @@ -34844,7 +34860,9 @@ function generic_dirname(is_dir_sep, current_dir_name, name){ /*<>*/ if(name === cst$19) /*<>*/ return current_dir_name; - var n = /*<>*/ caml_ml_string_length(name) - 1 | 0; + var + n$5 = /*<>*/ caml_ml_string_length(name) - 1 | 0, + n = n$5; for(;;){ /*<>*/ if(0 > n) /*<>*/ return caml_call3 @@ -35524,7 +35542,9 @@ (Stdlib[1], cst_Filename_chop_suffix) /*<>*/ ; } function extension_len(name){ - var i0 = /*<>*/ caml_ml_string_length(name) - 1 | 0; + var + i$3 = /*<>*/ caml_ml_string_length(name) - 1 | 0, + i0 = i$3; for(;;){ /*<>*/ if (0 <= i0 && ! /*<>*/ is_dir_sep$1(name, i0)){