mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-08-24 06:48:18 -07:00
Package-Manager: Portage-3.0.8, Repoman-3.0.1 Signed-off-by: Mark Wright <gienah@gentoo.org>
54 lines
1.8 KiB
Diff
54 lines
1.8 KiB
Diff
From: Stephane Glondu <steph@glondu.net>
|
|
Date: Fri, 6 Sep 2019 09:53:22 +0200
|
|
Subject: Fix compilation with OCaml 4.08.0
|
|
|
|
---
|
|
web.ml | 18 ++++++++++--------
|
|
1 file changed, 10 insertions(+), 8 deletions(-)
|
|
|
|
diff --git a/web.ml b/web.ml
|
|
index 7dc1470..6f9ca51 100644
|
|
--- a/web.ml
|
|
+++ b/web.ml
|
|
@@ -247,14 +247,16 @@ let norm_string s =
|
|
|
|
let alpha_string s1 s2 =
|
|
match what_is_first_char s1, what_is_first_char s2 with
|
|
- | Symbol, Symbol -> s1 < s2
|
|
- | Symbol, _ -> true
|
|
- | _, Symbol -> false
|
|
- | _,_ -> norm_string s1 < norm_string s2
|
|
+ | Symbol, Symbol -> compare s1 s2
|
|
+ | Symbol, _ -> -1
|
|
+ | _, Symbol -> 1
|
|
+ | _,_ -> compare (norm_string s1) (norm_string s2)
|
|
+
|
|
+let ( ++ ) c1 c2 =
|
|
+ if c1 = 0 then c2 else c1
|
|
|
|
let order_entry e1 e2 =
|
|
- (alpha_string e1.e_name e2.e_name) ||
|
|
- (e1.e_name = e2.e_name && e1.e_type < e2.e_type)
|
|
+ alpha_string e1.e_name e2.e_name ++ compare e1.e_type e2.e_type
|
|
|
|
(*s The following function collects all the index entries and sort them
|
|
using [alpha_string], returning a list. *)
|
|
@@ -264,7 +266,7 @@ module Idset = Set.Make(struct type t = index_entry let compare = compare end)
|
|
let all_entries () =
|
|
let s = Idmap.fold (fun x _ s -> Idset.add x s) !used Idset.empty in
|
|
let s = Idmap.fold (fun x _ s -> Idset.add x s) !defined s in
|
|
- Sort.list order_entry (Idset.elements s)
|
|
+ List.sort order_entry (Idset.elements s)
|
|
|
|
|
|
(*s When we are in \LaTeX\ style, an index entry only consists in two lists
|
|
@@ -324,7 +326,7 @@ let list_in_table id t =
|
|
try
|
|
let l = Whereset.elements (Idmap.find id t) in
|
|
let l = map_succeed_nf find_where l in
|
|
- let l = Sort.list (fun x x' -> snd x < snd x') l in
|
|
+ let l = List.sort (fun x x' -> compare (snd x) (snd x')) l in
|
|
uniquize l
|
|
with Not_found ->
|
|
[]
|