summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStephane Glondu <steph@glondu.net>2023-07-16 11:43:29 +0200
committerStephane Glondu <steph@glondu.net>2023-07-16 11:43:29 +0200
commit068cd72abf979ead658fee3511e935f8407224c2 (patch)
tree2704462271948be895b488bfda32e84e7bed42d2
parent0279cda5455451ee2be4372245be89a5aeacfad5 (diff)
New upstream version 0.10.6
-rw-r--r--ChangeLog8
-rw-r--r--Makefile2
-rw-r--r--OMakefile20
-rw-r--r--build.ml3
-rwxr-xr-xconfigure2
-rw-r--r--doc/html/omake-doc.html6
-rw-r--r--doc/html/omake-references.html2
-rw-r--r--doc/html/omake-toc.html4
-rw-r--r--doc/info/omake-doc.info1004
-rw-r--r--doc/info/omake-doc.info-16
-rw-r--r--doc/info/omake-doc.info-112
-rw-r--r--doc/src/omake-doc.tex2
-rw-r--r--doc/txt/omake-doc.txt8
-rw-r--r--lib/OMakeroot.install2
-rw-r--r--lib/Pervasives.install2
-rw-r--r--lib/build/C.install2
-rw-r--r--lib/build/Common.install2
-rw-r--r--lib/build/LaTeX.install2
-rw-r--r--lib/build/OCaml.install2
-rw-r--r--lib/build/svn_realclean.install2
-rw-r--r--lib/configure/Configure.install2
-rw-r--r--lib/configure/X.install2
-rw-r--r--lib/configure/fam.install2
-rw-r--r--lib/configure/fs_case_sensitive.install2
-rw-r--r--lib/configure/moncontrol.install2
-rw-r--r--lib/configure/ncurses.install2
-rw-r--r--lib/configure/posix_spawn.install2
-rw-r--r--lib/configure/readline.install2
-rw-r--r--lib/configure/snprintf.install2
-rw-r--r--lib/parse/C/Lex.install2
-rw-r--r--lib/parse/C/Parse.install2
-rw-r--r--lib/parse/LaTeX/Lex.install2
-rw-r--r--lib/parse/LaTeX/Macros.install2
-rw-r--r--lib/parse/LaTeX/Parse.install2
-rw-r--r--lib/parse/LaTeX/Spell.install2
-rw-r--r--lib/web/simple-xml.install2
-rw-r--r--mk/osconfig_mingw.mk2
-rw-r--r--mk/osconfig_msvc.mk2
-rw-r--r--mk/osconfig_unix.mk2
-rw-r--r--src/build/omake_build.ml14
-rw-r--r--src/build/omake_build_util.ml4
-rw-r--r--src/clib/lm_channel.c4
-rw-r--r--src/clib/lm_ctype.c2
-rw-r--r--src/clib/lm_fs_case_sensitive.c2
-rw-r--r--src/clib/lm_notify.c24
-rw-r--r--src/clib/lm_printf.c30
-rw-r--r--src/clib/lm_terminfo.c6
-rw-r--r--src/clib/lm_termsize.c6
-rw-r--r--src/clib/lm_uname_ext.c14
-rw-r--r--src/clib/lm_unix_cutil.c24
-rw-r--r--src/clib/omake_shell_spawn.c12
-rw-r--r--src/env/omake_env.ml8
-rw-r--r--src/env/omake_gen_parse.ml2
-rw-r--r--src/exec/omake_exec_remote.ml20
-rw-r--r--src/exec/omake_exec_util.ml10
-rw-r--r--src/front/lm_glob.ml2
-rw-r--r--src/front/lm_hash_cons.ml2
-rw-r--r--src/front/lm_parser.ml4
-rw-r--r--src/ir/omake_cache.mli2
-rw-r--r--src/ir/omake_install.ml6
-rw-r--r--src/ir/omake_node.ml6
-rw-r--r--src/ir/omake_value_util.ml4
-rw-r--r--src/libmojave/lm_channel.ml42
-rw-r--r--src/libmojave/lm_db.ml13
-rw-r--r--src/libmojave/lm_debug.ml2
-rw-r--r--src/libmojave/lm_int_set.ml2
-rw-r--r--src/libmojave/lm_notify.ml4
-rw-r--r--src/libmojave/lm_printf.mli22
-rw-r--r--src/libmojave/lm_string_set.ml2
-rw-r--r--src/libmojave/lm_string_util.ml4
-rw-r--r--src/libmojave/lm_unix_util.ml2
-rw-r--r--src/magic/omake_gen_magic.ml2
-rw-r--r--src/main/omake_shell.ml2
-rw-r--r--src/shell/omake_shell_sys_unix.ml4
-rw-r--r--src/shell/omake_shell_sys_win32.ml4
-rw-r--r--version.txt2
76 files changed, 720 insertions, 716 deletions
diff --git a/ChangeLog b/ChangeLog
index 0097a6c..69c74b7 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2023-02-24 Gerd Stolpmann <gerd@gerd-stolpmann.de>
+
+ * release omake-0.10.6
+
+ * Fix the code so that omake is buildable with OCaml-5.0.0
+
+ * Fix a regression: build omake when ocamlopt is unavailable
+
2022-06-12 Gerd Stolpmann
* release omake-0.10.5. The only change is a fix in the
diff --git a/Makefile b/Makefile
index 9214165..f0ff825 100644
--- a/Makefile
+++ b/Makefile
@@ -1,5 +1,5 @@
OCAML = ocaml
-OCAMLFLAGS = -safe-string -strict-sequence
+OCAMLFLAGS = -safe-string -strict-sequence -I +unix -I +str
.PHONY: all bootstrap force-bootstrap install default clean doc package
diff --git a/OMakefile b/OMakefile
index b283f13..d25c456 100644
--- a/OMakefile
+++ b/OMakefile
@@ -74,7 +74,7 @@ SCANNER_MODE = error
#
# OCaml options
#
-OCAMLFLAGS[] = -safe-string -strict-sequence -g -w -a-40
+OCAMLFLAGS[] = -safe-string -strict-sequence -g -w -a-40 -I +unix
if $(THREADS_ENABLED)
OCAMLFLAGS += -thread
export
@@ -90,15 +90,17 @@ compiler_config(a_compiler) =
return $(config)
static. =
- OCAMLOPT_CONFIG = $(compiler_config $(OCAMLOPT))
OCAMLOPT_OPTIMIZER_FLAGS[] =
- ConfMsgChecking($'if ocamlopt was compiled with flambda')
- if $(and $(OCAMLOPT_CONFIG.mem flambda), $(equal $(OCAMLOPT_CONFIG.find flambda), true))
- ConfMsgResult($'yes')
- OCAMLOPT_OPTIMIZER_FLAGS[] = -O3
- export
- else
- ConfMsgResult($'no')
+ if $(NATIVE_ENABLED)
+ OCAMLOPT_CONFIG = $(compiler_config $(OCAMLOPT))
+ ConfMsgChecking($'if ocamlopt was compiled with flambda')
+ if $(and $(OCAMLOPT_CONFIG.mem flambda), $(equal $(OCAMLOPT_CONFIG.find flambda), true))
+ ConfMsgResult($'yes')
+ OCAMLOPT_OPTIMIZER_FLAGS[] = -O3
+ export
+ else
+ ConfMsgResult($'no')
+ export
OCAMLOPTFLAGS[] = $(OCAMLFLAGS) $(OCAMLOPT_OPTIMIZER_FLAGS)
diff --git a/build.ml b/build.ml
index 189805f..7d7a4a0 100644
--- a/build.ml
+++ b/build.ml
@@ -268,7 +268,8 @@ let make self makedir vars target =
[] in
let args_a =
Array.of_list
- (Filename.concat dir "make.ml" :: "-C" :: makedir :: target :: args) in
+ ("-I" :: "+str" :: "-I" :: "+unix" :: Filename.concat dir "make.ml" ::
+ "-C" :: makedir :: target :: args) in
exec_command [] (ocaml vars) args_a
let run_bootstrap self vars =
diff --git a/configure b/configure
index 1c2de09..fd346cf 100755
--- a/configure
+++ b/configure
@@ -1,3 +1,3 @@
#! /bin/sh
-exec ocaml configure.ml "$@"
+exec ocaml -I +str -I +unix configure.ml "$@"
diff --git a/doc/html/omake-doc.html b/doc/html/omake-doc.html
index 67e705f..387cfb5 100644
--- a/doc/html/omake-doc.html
+++ b/doc/html/omake-doc.html
@@ -36,7 +36,7 @@ td p{margin:0px;}
.verbatim{margin-left:3ex; background:#ddeeff;}
CODE{padding-left:0.2ex; padding-right:0.2ex; background:#eef7ff;}
</style>
-<title>The OMake user guide and reference manual (version 0.10.5)
+<title>The OMake user guide and reference manual (version 0.10.6)
</title>
</head>
<body>
@@ -60,7 +60,7 @@ CODE{padding-left:0.2ex; padding-right:0.2ex; background:#eef7ff;}
</td></tr>
</table>
<!--ENDHTML-->
-<!--CUT DEF chapter 1 --><table class="title"><tr><td style="padding:1ex"><h1 class="titlemain">The OMake user guide and reference manual (version 0.10.5)</h1><h3 class="titlerest">Jason Hickey, Aleksey Nogin, <em>et. al.</em></h3><h3 class="titlerest">12<sup>th</sup>June,&#X2004;&#X200D;2022</h3></td></tr>
+<!--CUT DEF chapter 1 --><table class="title"><tr><td style="padding:1ex"><h1 class="titlemain">The OMake user guide and reference manual (version 0.10.6)</h1><h3 class="titlerest">Jason Hickey, Aleksey Nogin, <em>et. al.</em></h3><h3 class="titlerest">24<sup>th</sup>February,&#X2004;&#X200D;2023</h3></td></tr>
</table><p>
<a href="omake-doc.html">All the documentation on a single page</a></p><p><span class="c004">OMake table of contents</span>
</p><!--TOC chapter id="sec1" Contents-->
@@ -10518,7 +10518,7 @@ Array, <a href="#hevea_obj16">12.1.7</a>
osh(1) (Chapter&#X2004;&#X200D;<a href="#chapter%3Aosh">15</a>),
make(1)</p>
<!--TOC section id="sec655" Version-->
-<h2 class="section" id="sec655">C.2&#X2003;Version</h2><!--SEC END --><p>Version: 0.10.5 of 12<sup>th</sup>June,&#X2004;&#X200D;2022.</p>
+<h2 class="section" id="sec655">C.2&#X2003;Version</h2><!--SEC END --><p>Version: 0.10.6 of 24<sup>th</sup>February,&#X2004;&#X200D;2023.</p>
<!--TOC section id="sec656" License and Copyright-->
<h2 class="section" id="sec656">C.3&#X2003;License and Copyright</h2><!--SEC END --><p>&#XA9; 2003-2006, Mojave Group, Caltech</p><p>This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
diff --git a/doc/html/omake-references.html b/doc/html/omake-references.html
index 28e7d2d..f4a2c30 100644
--- a/doc/html/omake-references.html
+++ b/doc/html/omake-references.html
@@ -40,7 +40,7 @@
osh(1) (Chapter&#X2004;&#X200D;<a href="osh.html#chapter%3Aosh">15</a>),
make(1)</p>
<h2 class="section" id="sec655">C.2&#X2003;Version</h2>
-<p>Version: 0.10.5 of 12<sup>th</sup>June,&#X2004;&#X200D;2022.</p>
+<p>Version: 0.10.6 of 24<sup>th</sup>February,&#X2004;&#X200D;2023.</p>
<h2 class="section" id="sec656">C.3&#X2003;License and Copyright</h2>
<p>&#XA9; 2003-2006, Mojave Group, Caltech</p><p>This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
diff --git a/doc/html/omake-toc.html b/doc/html/omake-toc.html
index 3beb5a8..2d72111 100644
--- a/doc/html/omake-toc.html
+++ b/doc/html/omake-toc.html
@@ -3,7 +3,7 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<meta name="generator" content="hevea 2.35">
-<title>The OMake user guide and reference manual (version 0.10.5)
+<title>The OMake user guide and reference manual (version 0.10.6)
</title>
<link rel="stylesheet" type="text/css" href="omake-doc.css">
</head>
@@ -27,7 +27,7 @@
&bull;&nbsp;<a href="omake-option-index.html">Options</a>
</td></tr>
</table>
-<table class="title"><tr><td style="padding:1ex"><h1 class="titlemain">The OMake user guide and reference manual (version 0.10.5)</h1><h3 class="titlerest">Jason Hickey, Aleksey Nogin, <em>et. al.</em></h3><h3 class="titlerest">12<sup>th</sup>June,&#X2004;&#X200D;2022</h3></td></tr>
+<table class="title"><tr><td style="padding:1ex"><h1 class="titlemain">The OMake user guide and reference manual (version 0.10.6)</h1><h3 class="titlerest">Jason Hickey, Aleksey Nogin, <em>et. al.</em></h3><h3 class="titlerest">24<sup>th</sup>February,&#X2004;&#X200D;2023</h3></td></tr>
</table><p>
<a href="omake-doc.html">All the documentation on a single page</a></p><p><span class="c004">OMake table of contents</span>
</p><ul>
diff --git a/doc/info/omake-doc.info b/doc/info/omake-doc.info
index 7b08ab5..65db57a 100644
--- a/doc/info/omake-doc.info
+++ b/doc/info/omake-doc.info
@@ -2,512 +2,512 @@ This file has been translated from LaTeX by HeVeA.

Indirect:
omake-doc.info-1: 51
-omake-doc.info-2: 52101
-omake-doc.info-3: 102257
-omake-doc.info-4: 152836
-omake-doc.info-5: 203164
-omake-doc.info-6: 253847
-omake-doc.info-7: 304370
-omake-doc.info-8: 354735
-omake-doc.info-9: 404865
-omake-doc.info-10: 455162
-omake-doc.info-11: 515253
+omake-doc.info-2: 52109
+omake-doc.info-3: 102265
+omake-doc.info-4: 152844
+omake-doc.info-5: 203172
+omake-doc.info-6: 253855
+omake-doc.info-7: 304378
+omake-doc.info-8: 354743
+omake-doc.info-9: 404873
+omake-doc.info-10: 455170
+omake-doc.info-11: 515261

Tag Table:
(Indirect)
Node: Top52
-Node: Appendix C460803
-Node: Section 6-7115579
-Node: Section 11-9324089
-Node: Subsection 10-2-7232388
-Node: Subsection B-1-1426268
-Node: Section 10-1221009
-Node: Subsection 9-2-9180426
-Node: Subsection 10-8-31279100
-Node: Subsection 9-2-10180782
-Node: Section A-5422441
-Node: Subsection 10-8-28277192
-Node: Chapter 9169324
-Node: Subsection 10-10-1282978
-Node: Subsection 10-4-1245753
-Node: Subsection 9-2-14183055
-Node: Subsection 10-11-6294901
-Node: Subsection 10-8-10269561
-Node: Subsection 10-8-24275581
-Node: Subsection B-1-3427874
-Node: Subsection 10-11-1284660
-Node: Section 10-9281517
-Node: Subsection 10-5-3250436
-Node: Subsection 3-5-243248
-Node: Subsection 9-3-34205095
-Node: Subsection 10-1-5225451
-Node: Subsection 10-6-4258119
-Node: Subsection 10-6-3257676
-Node: Section B-1425725
-Node: Subsection A-3-15419534
-Node: Subsection 10-6-2257430
-Node: Appendix B425429
-Node: Section 15-1403651
-Node: Subsection 10-2-1229519
-Node: Subsection B-1-2426587
-Node: Subsection 10-11-5292031
-Node: Subsection 9-6-1218006
-Node: Subsection 9-3-7190638
-Node: Subsection 11-11-2326634
-Node: Subsection 10-8-34280583
-Node: Section 10-6256308
-Node: Subsection 10-5-2249448
-Node: Section 5-192613
-Node: Subsection 9-3-35205665
-Node: Subsection A-3-3415277
-Node: Subsection 10-1-9227525
-Node: Section 6-4112074
-Node: Subsection 10-8-26276367
-Node: Section 7-4122850
-Node: Section 11-11326110
-Node: Subsection 10-2-6231723
-Node: Chapter 6100721
-Node: Section I-4521012
-Node: Subsection A-3-20421550
-Node: Subsection 10-1-7226643
-Node: Section 8-7153470
-Node: Section 7-10135372
-Node: Section 14-3400262
-Node: Subsection 9-3-39207736
-Node: Subsection 9-2-17185042
-Node: Subsection A-3-5415877
-Node: Subsection 13-6-7384209
-Node: Subsection 13-4-1360539
-Node: Subsection 8-5-4145436
-Node: Subsection 14-3-1400992
-Node: Subsection 9-4-4214268
-Node: Section 9-2172415
-Node: Subsection 8-12-1164574
-Node: Subsection 10-5-11255291
-Node: Subsection 10-1-1221491
-Node: Subsection 9-3-47212186
-Node: Subsection 9-3-4189302
-Node: Section 4-1073693
-Node: Subsection A-3-14419281
-Node: Subsection 9-3-41208509
-Node: Section 2-617600
-Node: Subsection A-5-2422899
-Node: Section A-4422169
-Node: Subsection 10-8-18272507
-Node: Section 4-161179
-Node: Subsection 9-3-12192953
-Node: Subsection 9-2-5174973
-Node: Section 10-8263456
-Node: Section 8-3140803
-Node: Chapter 15403194
-Node: Subsection 13-6-5379032
-Node: Subsection 10-5-4250929
-Node: Subsection 10-3-3234706
-Node: Subsection 9-3-13193729
-Node: Section 13-7389103
-Node: Subsection A-3-7417012
-Node: Section 7-5123809
-Node: Subsection 10-8-35281012
-Node: Subsection 9-3-16195057
-Node: Section 2-37911
-Node: Subsection A-3-9417499
-Node: Subsection 12-1-14340100
-Node: Subsection 9-2-4174500
-Node: Subsection 13-5-4367476
-Node: Section 5-697906
-Node: Subsection 14-1-6397483
-Node: Subsection 10-8-1264730
-Node: Section 8-8153799
-Node: Section 13-6372144
-Node: Section 11-6321643
-Node: Subsection 10-2-4230660
-Node: Subsection A-2-1408238
-Node: Subsection 7-7-1129274
-Node: Subsection 13-2-4353881
-Node: Subsection 10-6-1256599
-Node: Section 9-1169734
-Node: Section 8-9154895
-Node: Section 11-10324840
-Node: Subsection 10-8-29278097
-Node: Subsection 10-11-3288200
-Node: Subsection 10-7-2261905
-Node: Subsection 12-1-3333490
-Node: Subsection 10-1-10227862
-Node: Subsection 9-3-21198434
-Node: Section 9-3185476
-Node: Subsection 10-8-16271626
-Node: Subsection 9-4-1212968
-Node: Chapter 324459
-Node: Subsection 10-8-4265918
-Node: Section 3-653008
-Node: Subsection 9-3-14194163
-Node: Subsection B-1-5429132
-Node: Section 3-436449
-Node: Section I-2520048
-Node: Subsection 13-5-3366483
-Node: Section 5-497018
-Node: Subsection 14-1-3395491
-Node: Subsection 10-11-25313585
-Node: Subsection 9-3-37206840
-Node: Subsection 12-1-15340321
-Node: Subsection 10-3-2234308
-Node: Subsection 10-2-5230995
-Node: Subsection 10-4-3247761
-Node: Subsection 10-5-8253847
-Node: Subsection 9-3-36206338
-Node: Subsection 10-11-24313012
-Node: Subsection 10-8-13270502
-Node: Subsection 13-6-3377168
-Node: Subsection 9-2-13182703
-Node: Section 4-262344
-Node: Subsection 8-5-8146763
-Node: Subsection 3-6-154669
-Node: Chapter 10220443
-Node: Section 7-1117234
-Node: Subsection A-2-11411695
-Node: Subsection 9-5-3216439
-Node: Subsection 9-3-17196610
-Node: Section 8-12163600
-Node: Appendix E499354
-Node: Chapter 11316632
-Node: Section 5-396206
-Node: Appendix H517826
-Node: Subsection A-2-12412216
-Node: Subsection 9-5-1215134
-Node: Section 7-8132090
-Node: Subsection A-3-13419021
-Node: Section 10-5248320
-Node: Notes 14201
-Node: Subsection 13-5-2364258
-Node: Subsection 10-11-12303827
-Node: Subsection 8-11-2160675
-Node: Section 2-921733
-Node: Subsection 13-3-6359935
-Node: Subsection 10-11-20310726
-Node: Chapter 14392816
-Node: Subsection 9-2-15183400
-Node: Section 5-799234
-Node: Subsection 10-11-14306707
-Node: Subsection 10-1-2222966
-Node: Subsection 9-3-9191577
-Node: Section 8-2140347
-Node: Subsection 9-3-29202598
-Node: Subsection A-2-10411294
-Node: Section 7-9134282
-Node: Subsection 13-6-4377995
-Node: Subsection 10-8-25275955
-Node: Subsection 10-8-12270187
-Node: Subsection 9-3-38207360
-Node: Subsection 8-6-1151121
-Node: Subsection 12-1-22343621
-Node: Section 11-12327717
-Node: Subsection 9-2-11181334
-Node: Subsection 2-1-26294
-Node: Subsection 12-1-5333952
-Node: Subsection 10-8-19272771
-Node: Subsection 6-3-1108622
-Node: Section 6-3106006
-Node: Subsection 10-8-8268618
-Node: Subsection 10-3-6239081
-Node: Subsection 10-5-9254228
-Node: Subsection 8-5-1144067
-Node: Subsection 12-1-7336306
-Node: Subsection 8-11-3162141
-Node: Subsection 13-3-5358500
-Node: Subsection 12-1-1329718
-Node: Appendix D492571
-Node: Section 8-5143668
-Node: Section 4-971577
-Node: Subsection 12-1-2331309
-Node: Subsection 9-3-33204474
-Node: Subsection 12-1-19342392
-Node: Subsection 9-3-11192434
-Node: Section B-4452167
-Node: Section 9-6217819
-Node: Subsection 10-11-26314098
-Node: Subsection 10-8-27276786
-Node: Subsection 12-1-13339881
-Node: Subsection 8-6-2152836
-Node: Subsection 4-5-267690
-Node: Section 11-4320208
-Node: Section 10-2229072
-Node: Subsection 14-1-7398238
-Node: Subsection 9-4-2213166
-Node: Subsection 10-8-22274760
-Node: Subsection 10-5-10254784
-Node: Subsection 13-2-2352853
-Node: Section 4-669391
-Node: Subsection 3-5-552101
-Node: Subsection 9-3-6190106
-Node: Subsection A-3-2415067
-Node: Subsection 10-11-28314820
-Node: Subsection 10-8-6267112
-Node: Subsection 10-5-1248894
-Node: Chapter 460293
-Node: Section I-1519856
-Node: Section 11-2318776
-Node: Subsection A-3-17420467
-Node: Section 5-597475
-Node: Subsection 8-11-1159611
-Node: Section 6-6114987
-Node: Subsection 9-3-23199433
-Node: Section 11-1317215
-Node: Section 10-11283347
-Node: Subsection 10-1-12228652
-Node: Chapter 24390
-Node: Section 13-4360213
-Node: Subsection 8-5-7146417
-Node: Section 2-26958
-Node: Section 14-2399390
-Node: Section 8-13167305
-Node: Subsection 8-12-2165675
-Node: Subsection 12-1-4333743
-Node: Section I-5521340
-Node: Subsection 10-2-2229883
-Node: Chapter 12328627
-Node: Subsection 9-4-3213417
-Node: Chapter 13349142
-Node: Subsection 9-3-44210067
-Node: Section 2-511810
-Node: Subsection A-3-6416801
-Node: Subsection 8-5-3145248
-Node: Subsection A-2-4408972
-Node: Subsection 10-2-3230449
-Node: Section 4-1377634
-Node: Section 2-819951
-Node: Section 11-8323506
-Node: Subsection 9-3-30203164
-Node: Section 7-7127785
-Node: Subsection 14-1-2395170
-Node: Subsection A-3-18420775
-Node: Subsection 10-11-2287888
-Node: Subsection 8-5-2144589
-Node: Subsection 10-11-4289370
-Node: Section 4-463247
-Node: Section 8-6147662
-Node: Section A-6423426
-Node: Subsection 13-3-3357137
-Node: Subsection 10-8-17272126
-Node: Subsection 10-5-7253019
-Node: Subsection 10-3-5238536
-Node: Subsection 9-5-2215654
-Node: Subsection 9-3-20198007
-Node: Section 2-718006
-Node: Subsection 9-3-25200805
-Node: Section 4-1276849
-Node: Section 4-1478929
-Node: Subsection A-3-21421823
-Node: Subsection A-3-4415594
-Node: Subsection 14-1-1394443
-Node: Subsection 9-3-42208893
-Node: Subsection 12-1-8336672
-Node: Subsection 9-3-45210620
-Node: Subsection 13-7-1389635
-Node: Subsection 10-11-7296374
-Node: Subsection 9-3-1187211
-Node: Subsection A-2-3408649
-Node: Subsection 14-3-3402814
-Node: Subsection 9-2-3174025
-Node: Section I-3520207
-Node: Subsection 13-3-1354735
-Node: Subsection 10-11-13304370
-Node: Subsection 9-3-18197066
-Node: Chapter 7116398
-Node: Section B-3449647
-Node: Subsection 9-7-3219692
-Node: Subsection 4-15-181137
-Node: Section 15-3405304
-Node: Subsection 10-3-1233649
-Node: Subsection 12-1-20342658
-Node: Subsection 12-1-11337358
-Node: Subsection 10-11-30315894
-Node: Subsection 12-1-6334175
-Node: Subsection 10-8-7267736
-Node: Section 2-1023745
-Node: Subsection 10-5-12255651
-Node: Subsection 9-3-2187739
-Node: Subsection 12-1-18342155
-Node: Subsection 10-3-7241084
-Node: Subsection 9-7-2219346
-Node: Subsection 9-3-15194803
-Node: Section 3-130164
-Node: Subsection 9-3-22198943
-Node: Subsection 10-11-16308012
-Node: Subsection 9-2-12181823
-Node: Subsection 4-5-166809
-Node: Section 13-1349607
-Node: Subsection 9-3-28202083
-Node: Subsection 13-4-2361702
-Node: Subsection 10-8-23275189
-Node: Subsection 13-7-2390788
-Node: Subsection 13-6-2374065
-Node: Subsection 10-8-5266838
-Node: Subsection 13-3-2356759
-Node: Subsection 11-11-4327048
-Node: Subsection 9-3-5189640
-Node: Section 3-333745
-Node: Subsection 10-1-6225945
-Node: Section A-1407103
-Node: Subsection 8-5-5145731
-Node: Subsection 10-5-6252585
-Node: Subsection 9-3-3188624
-Node: Subsection 3-6-356372
-Node: Section 4-1175195
-Node: Subsection A-3-16419982
-Node: Subsection A-2-2408410
-Node: Subsection 10-11-21311206
-Node: Subsection 10-3-4237232
-Node: Subsection 11-11-6327536
-Node: Subsection 9-2-7178449
-Node: Subsection 9-3-46211955
-Node: Section 6-1102257
-Node: Section 10-3233130
-Node: Subsection 3-5-142021
-Node: Subsection 9-2-6176411
-Node: Subsection B-2-1432487
-Node: Section 10-10282203
-Node: Subsection 10-1-4224669
-Node: Subsection 9-2-2173580
-Node: Subsection 12-1-16340678
-Node: Subsection A-3-11417990
-Node: Section 11-5320785
-Node: Subsection 10-8-15271160
-Node: Subsection 9-7-4220151
-Node: Appendix A406176
-Node: Subsection 10-11-15307098
-Node: Subsection B-2-2434987
-Node: Subsection A-5-1422662
-Node: Section 8-1139673
-Node: Subsection 10-11-11302398
-Node: Subsection 10-8-11269866
-Node: Subsection 9-3-10192090
-Node: Section 13-2352003
-Node: Subsection 10-11-17309152
-Node: Section 4-1579650
-Node: Subsection 9-2-8179875
-Node: Section 8-4141989
-Node: Notes 01400
-Node: Section 6-5113729
-Node: Section 4-870821
-Node: Subsection A-3-12418259
-Node: Subsection B-1-4428597
-Node: Subsection 14-1-4396145
-Node: Subsection 13-2-1352312
-Node: Section 12-1328931
-Node: Subsection 11-11-5327247
-Node: Subsection 6-3-2109352
-Node: Section 3-230987
-Node: Subsection 2-1-15706
-Node: Subsection 10-8-9269279
-Node: Subsection 9-5-4216944
-Node: Section 7-6124945
-Node: Subsection A-3-10417755
-Node: Subsection 10-5-13255985
-Node: Appendix F515253
-Node: Subsection 10-5-5251588
-Node: Subsection 3-5-344824
-Node: Section 15-2404865
-Node: Subsection 10-11-22311748
-Node: Subsection 10-8-3265487
-Node: Subsection 9-3-26201140
-Node: Section 7-3122220
-Node: Section A-7424493
-Node: Subsection 11-10-2325258
-Node: Appendix I519582
-Node: Subsection 10-8-14270822
-Node: Subsection A-2-5409326
-Node: Subsection 9-3-31203736
-Node: Subsection 9-3-24200001
-Node: Subsection 10-11-29315427
-Node: Section 10-7258608
-Node: Section 9-4212709
-Node: Section 8-11156838
-Node: Subsection A-3-19421219
-Node: Subsection B-4-1454830
-Node: Subsection 14-1-8399079
-Node: Subsection 10-8-33280131
-Node: Subsection 12-1-21343111
-Node: Subsection 9-2-16184544
-Node: Section 3-540038
-Node: Subsection 14-1-5397139
-Node: Subsection 13-2-3353406
-Node: Subsection 11-10-1325066
-Node: Subsection 10-11-8297722
-Node: Subsection 9-3-8191103
-Node: Subsection 10-8-21274449
-Node: Subsection 10-1-3223649
-Node: Subsection 9-3-43209309
-Node: Subsection 9-3-32204076
-Node: Section 6-2104951
-Node: Subsection A-3-8417236
-Node: Subsection 12-1-10337104
-Node: Section 4-1686798
-Node: Subsection 13-6-1372959
-Node: Section 11-7322496
-Node: Section A-3413928
-Node: Subsection 9-7-1219024
-Node: Section 9-7218763
-Node: Subsection A-6-1423593
-Node: Section 9-5214847
-Node: Subsection 8-5-6146118
-Node: Subsection A-2-6409537
-Node: Subsection 11-11-1326463
-Node: Subsection 10-7-1258814
-Node: Section 4-362813
-Node: Section 2-14937
-Node: Section 11-3319601
-Node: Section 8-10156265
-Node: Subsection B-4-2455162
-Node: Subsection 10-8-2265177
-Node: Subsection 3-5-448364
-Node: Section 7-2119798
-Node: Chapter 12015
-Node: Subsection 9-3-40208128
-Node: Subsection 11-11-3326841
-Node: Section 10-4241512
-Node: Subsection 10-11-19310284
-Node: Subsection 3-6-255345
-Node: Subsection 10-8-32279406
-Node: Subsection 10-1-8227113
-Node: Subsection 3-6-458926
-Node: Section A-2407706
-Node: Section 13-5362490
-Node: Subsection 9-3-27201517
-Node: Chapter 8136853
-Node: Chapter 591745
-Node: Section 2-411127
-Node: Subsection 10-11-27314534
-Node: Subsection 10-11-18309747
-Node: Subsection 10-8-30278725
-Node: Subsection 10-4-2247075
-Node: Section B-2431908
-Node: Subsection A-2-8410008
-Node: Subsection 13-5-1363071
-Node: Section 13-3354312
-Node: Subsection 9-3-19197553
-Node: Subsection 12-1-12338985
-Node: Subsection 11-12-1327884
-Node: Subsection 10-11-23312347
-Node: Section A-8424955
-Node: Section 14-1393390
-Node: Appendix G516957
-Node: Subsection A-2-9410353
-Node: Subsection A-2-7409750
-Node: Subsection 10-8-20273654
-Node: Subsection B-1-6430406
-Node: Subsection A-3-1414750
-Node: Subsection 10-11-10301881
-Node: Subsection 12-1-9336842
-Node: Subsection 12-1-17341269
-Node: Subsection 10-1-11228178
-Node: Section 5-295227
-Node: Subsection 14-3-2401872
-Node: Subsection 13-6-6382415
-Node: Subsection 10-11-9298755
-Node: Subsection 9-2-1173284
-Node: Section 4-770624
-Node: Subsection 13-3-4358073
-Node: Section 4-564433
+Node: Appendix C460811
+Node: Section 6-7115587
+Node: Section 11-9324097
+Node: Subsection 10-2-7232396
+Node: Subsection B-1-1426276
+Node: Section 10-1221017
+Node: Subsection 9-2-9180434
+Node: Subsection 10-8-31279108
+Node: Subsection 9-2-10180790
+Node: Section A-5422449
+Node: Subsection 10-8-28277200
+Node: Chapter 9169332
+Node: Subsection 10-10-1282986
+Node: Subsection 10-4-1245761
+Node: Subsection 9-2-14183063
+Node: Subsection 10-11-6294909
+Node: Subsection 10-8-10269569
+Node: Subsection 10-8-24275589
+Node: Subsection B-1-3427882
+Node: Subsection 10-11-1284668
+Node: Section 10-9281525
+Node: Subsection 10-5-3250444
+Node: Subsection 3-5-243256
+Node: Subsection 9-3-34205103
+Node: Subsection 10-1-5225459
+Node: Subsection 10-6-4258127
+Node: Subsection 10-6-3257684
+Node: Section B-1425733
+Node: Subsection A-3-15419542
+Node: Subsection 10-6-2257438
+Node: Appendix B425437
+Node: Section 15-1403659
+Node: Subsection 10-2-1229527
+Node: Subsection B-1-2426595
+Node: Subsection 10-11-5292039
+Node: Subsection 9-6-1218014
+Node: Subsection 9-3-7190646
+Node: Subsection 11-11-2326642
+Node: Subsection 10-8-34280591
+Node: Section 10-6256316
+Node: Subsection 10-5-2249456
+Node: Section 5-192621
+Node: Subsection 9-3-35205673
+Node: Subsection A-3-3415285
+Node: Subsection 10-1-9227533
+Node: Section 6-4112082
+Node: Subsection 10-8-26276375
+Node: Section 7-4122858
+Node: Section 11-11326118
+Node: Subsection 10-2-6231731
+Node: Chapter 6100729
+Node: Section I-4521024
+Node: Subsection A-3-20421558
+Node: Subsection 10-1-7226651
+Node: Section 8-7153478
+Node: Section 7-10135380
+Node: Section 14-3400270
+Node: Subsection 9-3-39207744
+Node: Subsection 9-2-17185050
+Node: Subsection A-3-5415885
+Node: Subsection 13-6-7384217
+Node: Subsection 13-4-1360547
+Node: Subsection 8-5-4145444
+Node: Subsection 14-3-1401000
+Node: Subsection 9-4-4214276
+Node: Section 9-2172423
+Node: Subsection 8-12-1164582
+Node: Subsection 10-5-11255299
+Node: Subsection 10-1-1221499
+Node: Subsection 9-3-47212194
+Node: Subsection 9-3-4189310
+Node: Section 4-1073701
+Node: Subsection A-3-14419289
+Node: Subsection 9-3-41208517
+Node: Section 2-617608
+Node: Subsection A-5-2422907
+Node: Section A-4422177
+Node: Subsection 10-8-18272515
+Node: Section 4-161187
+Node: Subsection 9-3-12192961
+Node: Subsection 9-2-5174981
+Node: Section 10-8263464
+Node: Section 8-3140811
+Node: Chapter 15403202
+Node: Subsection 13-6-5379040
+Node: Subsection 10-5-4250937
+Node: Subsection 10-3-3234714
+Node: Subsection 9-3-13193737
+Node: Section 13-7389111
+Node: Subsection A-3-7417020
+Node: Section 7-5123817
+Node: Subsection 10-8-35281020
+Node: Subsection 9-3-16195065
+Node: Section 2-37919
+Node: Subsection A-3-9417507
+Node: Subsection 12-1-14340108
+Node: Subsection 9-2-4174508
+Node: Subsection 13-5-4367484
+Node: Section 5-697914
+Node: Subsection 14-1-6397491
+Node: Subsection 10-8-1264738
+Node: Section 8-8153807
+Node: Section 13-6372152
+Node: Section 11-6321651
+Node: Subsection 10-2-4230668
+Node: Subsection A-2-1408246
+Node: Subsection 7-7-1129282
+Node: Subsection 13-2-4353889
+Node: Subsection 10-6-1256607
+Node: Section 9-1169742
+Node: Section 8-9154903
+Node: Section 11-10324848
+Node: Subsection 10-8-29278105
+Node: Subsection 10-11-3288208
+Node: Subsection 10-7-2261913
+Node: Subsection 12-1-3333498
+Node: Subsection 10-1-10227870
+Node: Subsection 9-3-21198442
+Node: Section 9-3185484
+Node: Subsection 10-8-16271634
+Node: Subsection 9-4-1212976
+Node: Chapter 324467
+Node: Subsection 10-8-4265926
+Node: Section 3-653016
+Node: Subsection 9-3-14194171
+Node: Subsection B-1-5429140
+Node: Section 3-436457
+Node: Section I-2520056
+Node: Subsection 13-5-3366491
+Node: Section 5-497026
+Node: Subsection 14-1-3395499
+Node: Subsection 10-11-25313593
+Node: Subsection 9-3-37206848
+Node: Subsection 12-1-15340329
+Node: Subsection 10-3-2234316
+Node: Subsection 10-2-5231003
+Node: Subsection 10-4-3247769
+Node: Subsection 10-5-8253855
+Node: Subsection 9-3-36206346
+Node: Subsection 10-11-24313020
+Node: Subsection 10-8-13270510
+Node: Subsection 13-6-3377176
+Node: Subsection 9-2-13182711
+Node: Section 4-262352
+Node: Subsection 8-5-8146771
+Node: Subsection 3-6-154677
+Node: Chapter 10220451
+Node: Section 7-1117242
+Node: Subsection A-2-11411703
+Node: Subsection 9-5-3216447
+Node: Subsection 9-3-17196618
+Node: Section 8-12163608
+Node: Appendix E499362
+Node: Chapter 11316640
+Node: Section 5-396214
+Node: Appendix H517834
+Node: Subsection A-2-12412224
+Node: Subsection 9-5-1215142
+Node: Section 7-8132098
+Node: Subsection A-3-13419029
+Node: Section 10-5248328
+Node: Notes 14209
+Node: Subsection 13-5-2364266
+Node: Subsection 10-11-12303835
+Node: Subsection 8-11-2160683
+Node: Section 2-921741
+Node: Subsection 13-3-6359943
+Node: Subsection 10-11-20310734
+Node: Chapter 14392824
+Node: Subsection 9-2-15183408
+Node: Section 5-799242
+Node: Subsection 10-11-14306715
+Node: Subsection 10-1-2222974
+Node: Subsection 9-3-9191585
+Node: Section 8-2140355
+Node: Subsection 9-3-29202606
+Node: Subsection A-2-10411302
+Node: Section 7-9134290
+Node: Subsection 13-6-4378003
+Node: Subsection 10-8-25275963
+Node: Subsection 10-8-12270195
+Node: Subsection 9-3-38207368
+Node: Subsection 8-6-1151129
+Node: Subsection 12-1-22343629
+Node: Section 11-12327725
+Node: Subsection 9-2-11181342
+Node: Subsection 2-1-26302
+Node: Subsection 12-1-5333960
+Node: Subsection 10-8-19272779
+Node: Subsection 6-3-1108630
+Node: Section 6-3106014
+Node: Subsection 10-8-8268626
+Node: Subsection 10-3-6239089
+Node: Subsection 10-5-9254236
+Node: Subsection 8-5-1144075
+Node: Subsection 12-1-7336314
+Node: Subsection 8-11-3162149
+Node: Subsection 13-3-5358508
+Node: Subsection 12-1-1329726
+Node: Appendix D492579
+Node: Section 8-5143676
+Node: Section 4-971585
+Node: Subsection 12-1-2331317
+Node: Subsection 9-3-33204482
+Node: Subsection 12-1-19342400
+Node: Subsection 9-3-11192442
+Node: Section B-4452175
+Node: Section 9-6217827
+Node: Subsection 10-11-26314106
+Node: Subsection 10-8-27276794
+Node: Subsection 12-1-13339889
+Node: Subsection 8-6-2152844
+Node: Subsection 4-5-267698
+Node: Section 11-4320216
+Node: Section 10-2229080
+Node: Subsection 14-1-7398246
+Node: Subsection 9-4-2213174
+Node: Subsection 10-8-22274768
+Node: Subsection 10-5-10254792
+Node: Subsection 13-2-2352861
+Node: Section 4-669399
+Node: Subsection 3-5-552109
+Node: Subsection 9-3-6190114
+Node: Subsection A-3-2415075
+Node: Subsection 10-11-28314828
+Node: Subsection 10-8-6267120
+Node: Subsection 10-5-1248902
+Node: Chapter 460301
+Node: Section I-1519864
+Node: Section 11-2318784
+Node: Subsection A-3-17420475
+Node: Section 5-597483
+Node: Subsection 8-11-1159619
+Node: Section 6-6114995
+Node: Subsection 9-3-23199441
+Node: Section 11-1317223
+Node: Section 10-11283355
+Node: Subsection 10-1-12228660
+Node: Chapter 24398
+Node: Section 13-4360221
+Node: Subsection 8-5-7146425
+Node: Section 2-26966
+Node: Section 14-2399398
+Node: Section 8-13167313
+Node: Subsection 8-12-2165683
+Node: Subsection 12-1-4333751
+Node: Section I-5521352
+Node: Subsection 10-2-2229891
+Node: Chapter 12328635
+Node: Subsection 9-4-3213425
+Node: Chapter 13349150
+Node: Subsection 9-3-44210075
+Node: Section 2-511818
+Node: Subsection A-3-6416809
+Node: Subsection 8-5-3145256
+Node: Subsection A-2-4408980
+Node: Subsection 10-2-3230457
+Node: Section 4-1377642
+Node: Section 2-819959
+Node: Section 11-8323514
+Node: Subsection 9-3-30203172
+Node: Section 7-7127793
+Node: Subsection 14-1-2395178
+Node: Subsection A-3-18420783
+Node: Subsection 10-11-2287896
+Node: Subsection 8-5-2144597
+Node: Subsection 10-11-4289378
+Node: Section 4-463255
+Node: Section 8-6147670
+Node: Section A-6423434
+Node: Subsection 13-3-3357145
+Node: Subsection 10-8-17272134
+Node: Subsection 10-5-7253027
+Node: Subsection 10-3-5238544
+Node: Subsection 9-5-2215662
+Node: Subsection 9-3-20198015
+Node: Section 2-718014
+Node: Subsection 9-3-25200813
+Node: Section 4-1276857
+Node: Section 4-1478937
+Node: Subsection A-3-21421831
+Node: Subsection A-3-4415602
+Node: Subsection 14-1-1394451
+Node: Subsection 9-3-42208901
+Node: Subsection 12-1-8336680
+Node: Subsection 9-3-45210628
+Node: Subsection 13-7-1389643
+Node: Subsection 10-11-7296382
+Node: Subsection 9-3-1187219
+Node: Subsection A-2-3408657
+Node: Subsection 14-3-3402822
+Node: Subsection 9-2-3174033
+Node: Section I-3520219
+Node: Subsection 13-3-1354743
+Node: Subsection 10-11-13304378
+Node: Subsection 9-3-18197074
+Node: Chapter 7116406
+Node: Section B-3449655
+Node: Subsection 9-7-3219700
+Node: Subsection 4-15-181145
+Node: Section 15-3405312
+Node: Subsection 10-3-1233657
+Node: Subsection 12-1-20342666
+Node: Subsection 12-1-11337366
+Node: Subsection 10-11-30315902
+Node: Subsection 12-1-6334183
+Node: Subsection 10-8-7267744
+Node: Section 2-1023753
+Node: Subsection 10-5-12255659
+Node: Subsection 9-3-2187747
+Node: Subsection 12-1-18342163
+Node: Subsection 10-3-7241092
+Node: Subsection 9-7-2219354
+Node: Subsection 9-3-15194811
+Node: Section 3-130172
+Node: Subsection 9-3-22198951
+Node: Subsection 10-11-16308020
+Node: Subsection 9-2-12181831
+Node: Subsection 4-5-166817
+Node: Section 13-1349615
+Node: Subsection 9-3-28202091
+Node: Subsection 13-4-2361710
+Node: Subsection 10-8-23275197
+Node: Subsection 13-7-2390796
+Node: Subsection 13-6-2374073
+Node: Subsection 10-8-5266846
+Node: Subsection 13-3-2356767
+Node: Subsection 11-11-4327056
+Node: Subsection 9-3-5189648
+Node: Section 3-333753
+Node: Subsection 10-1-6225953
+Node: Section A-1407111
+Node: Subsection 8-5-5145739
+Node: Subsection 10-5-6252593
+Node: Subsection 9-3-3188632
+Node: Subsection 3-6-356380
+Node: Section 4-1175203
+Node: Subsection A-3-16419990
+Node: Subsection A-2-2408418
+Node: Subsection 10-11-21311214
+Node: Subsection 10-3-4237240
+Node: Subsection 11-11-6327544
+Node: Subsection 9-2-7178457
+Node: Subsection 9-3-46211963
+Node: Section 6-1102265
+Node: Section 10-3233138
+Node: Subsection 3-5-142029
+Node: Subsection 9-2-6176419
+Node: Subsection B-2-1432495
+Node: Section 10-10282211
+Node: Subsection 10-1-4224677
+Node: Subsection 9-2-2173588
+Node: Subsection 12-1-16340686
+Node: Subsection A-3-11417998
+Node: Section 11-5320793
+Node: Subsection 10-8-15271168
+Node: Subsection 9-7-4220159
+Node: Appendix A406184
+Node: Subsection 10-11-15307106
+Node: Subsection B-2-2434995
+Node: Subsection A-5-1422670
+Node: Section 8-1139681
+Node: Subsection 10-11-11302406
+Node: Subsection 10-8-11269874
+Node: Subsection 9-3-10192098
+Node: Section 13-2352011
+Node: Subsection 10-11-17309160
+Node: Section 4-1579658
+Node: Subsection 9-2-8179883
+Node: Section 8-4141997
+Node: Notes 01408
+Node: Section 6-5113737
+Node: Section 4-870829
+Node: Subsection A-3-12418267
+Node: Subsection B-1-4428605
+Node: Subsection 14-1-4396153
+Node: Subsection 13-2-1352320
+Node: Section 12-1328939
+Node: Subsection 11-11-5327255
+Node: Subsection 6-3-2109360
+Node: Section 3-230995
+Node: Subsection 2-1-15714
+Node: Subsection 10-8-9269287
+Node: Subsection 9-5-4216952
+Node: Section 7-6124953
+Node: Subsection A-3-10417763
+Node: Subsection 10-5-13255993
+Node: Appendix F515261
+Node: Subsection 10-5-5251596
+Node: Subsection 3-5-344832
+Node: Section 15-2404873
+Node: Subsection 10-11-22311756
+Node: Subsection 10-8-3265495
+Node: Subsection 9-3-26201148
+Node: Section 7-3122228
+Node: Section A-7424501
+Node: Subsection 11-10-2325266
+Node: Appendix I519590
+Node: Subsection 10-8-14270830
+Node: Subsection A-2-5409334
+Node: Subsection 9-3-31203744
+Node: Subsection 9-3-24200009
+Node: Subsection 10-11-29315435
+Node: Section 10-7258616
+Node: Section 9-4212717
+Node: Section 8-11156846
+Node: Subsection A-3-19421227
+Node: Subsection B-4-1454838
+Node: Subsection 14-1-8399087
+Node: Subsection 10-8-33280139
+Node: Subsection 12-1-21343119
+Node: Subsection 9-2-16184552
+Node: Section 3-540046
+Node: Subsection 14-1-5397147
+Node: Subsection 13-2-3353414
+Node: Subsection 11-10-1325074
+Node: Subsection 10-11-8297730
+Node: Subsection 9-3-8191111
+Node: Subsection 10-8-21274457
+Node: Subsection 10-1-3223657
+Node: Subsection 9-3-43209317
+Node: Subsection 9-3-32204084
+Node: Section 6-2104959
+Node: Subsection A-3-8417244
+Node: Subsection 12-1-10337112
+Node: Section 4-1686806
+Node: Subsection 13-6-1372967
+Node: Section 11-7322504
+Node: Section A-3413936
+Node: Subsection 9-7-1219032
+Node: Section 9-7218771
+Node: Subsection A-6-1423601
+Node: Section 9-5214855
+Node: Subsection 8-5-6146126
+Node: Subsection A-2-6409545
+Node: Subsection 11-11-1326471
+Node: Subsection 10-7-1258822
+Node: Section 4-362821
+Node: Section 2-14945
+Node: Section 11-3319609
+Node: Section 8-10156273
+Node: Subsection B-4-2455170
+Node: Subsection 10-8-2265185
+Node: Subsection 3-5-448372
+Node: Section 7-2119806
+Node: Chapter 12023
+Node: Subsection 9-3-40208136
+Node: Subsection 11-11-3326849
+Node: Section 10-4241520
+Node: Subsection 10-11-19310292
+Node: Subsection 3-6-255353
+Node: Subsection 10-8-32279414
+Node: Subsection 10-1-8227121
+Node: Subsection 3-6-458934
+Node: Section A-2407714
+Node: Section 13-5362498
+Node: Subsection 9-3-27201525
+Node: Chapter 8136861
+Node: Chapter 591753
+Node: Section 2-411135
+Node: Subsection 10-11-27314542
+Node: Subsection 10-11-18309755
+Node: Subsection 10-8-30278733
+Node: Subsection 10-4-2247083
+Node: Section B-2431916
+Node: Subsection A-2-8410016
+Node: Subsection 13-5-1363079
+Node: Section 13-3354320
+Node: Subsection 9-3-19197561
+Node: Subsection 12-1-12338993
+Node: Subsection 11-12-1327892
+Node: Subsection 10-11-23312355
+Node: Section A-8424963
+Node: Section 14-1393398
+Node: Appendix G516965
+Node: Subsection A-2-9410361
+Node: Subsection A-2-7409758
+Node: Subsection 10-8-20273662
+Node: Subsection B-1-6430414
+Node: Subsection A-3-1414758
+Node: Subsection 10-11-10301889
+Node: Subsection 12-1-9336850
+Node: Subsection 12-1-17341277
+Node: Subsection 10-1-11228186
+Node: Section 5-295235
+Node: Subsection 14-3-2401880
+Node: Subsection 13-6-6382423
+Node: Subsection 10-11-9298763
+Node: Subsection 9-2-1173292
+Node: Section 4-770632
+Node: Subsection 13-3-4358081
+Node: Section 4-564441

End Tag Table
diff --git a/doc/info/omake-doc.info-1 b/doc/info/omake-doc.info-1
index 5c5b3da..cf6b1e5 100644
--- a/doc/info/omake-doc.info-1
+++ b/doc/info/omake-doc.info-1
@@ -4,12 +4,12 @@ This file has been translated from LaTeX by HeVeA.
File: omake-doc, Node: Top, Next: Chapter 1, Up: (dir)
OMake manual:
-The OMake user guide and reference manual (version 0.10.5)
+The OMake user guide and reference manual (version 0.10.6)
**********************************************************
Jason Hickey, Aleksey Nogin, et. al.
====================================
-12^thJune, 2022
-===============
+24^thFebruary, 2023
+===================
All the documentation on a single page (23*Note Notes 0::)
OMake table of contents
diff --git a/doc/info/omake-doc.info-11 b/doc/info/omake-doc.info-11
index ed303a2..397e664 100644
--- a/doc/info/omake-doc.info-11
+++ b/doc/info/omake-doc.info-11
@@ -157,7 +157,7 @@ I.2 Version
************
- Version: 0.10.5 of 12^thJune, 2022.
+ Version: 0.10.6 of 24^thFebruary, 2023.

File: omake-doc, Node: Section I-3, Next: Section I-4, Prev: Section I-2, Up: Appendix I
diff --git a/doc/src/omake-doc.tex b/doc/src/omake-doc.tex
index c847422..a21a206 100644
--- a/doc/src/omake-doc.tex
+++ b/doc/src/omake-doc.tex
@@ -17,7 +17,7 @@
\newcommand{\authors}{Jason Hickey, Aleksey Nogin, \emph{et. al.}}
-\newcommand{\Version}{0.10.5}
+\newcommand{\Version}{0.10.6}
\title{The \OMake{} user guide and reference manual (version \Version{})}
\author{\authors}
diff --git a/doc/txt/omake-doc.txt b/doc/txt/omake-doc.txt
index e5622b7..a972cba 100644
--- a/doc/txt/omake-doc.txt
+++ b/doc/txt/omake-doc.txt
@@ -1,11 +1,11 @@
OMake manual:
- The OMake user guide and reference manual (version 0.10.5)
+ The OMake user guide and reference manual (version 0.10.6)
**********************************************************
Jason Hickey, Aleksey Nogin, et. al.
====================================
- 12^thJune, 2022
- ===============
+ 24^thFebruary, 2023
+ ===================
All the documentation on a single page (23)
OMake table of contents
@@ -14502,7 +14502,7 @@ C.2 Version
*=*=*=*=*=*
- Version: 0.10.5 of 12^thJune, 2022.
+ Version: 0.10.6 of 24^thFebruary, 2023.
C.3 License and Copyright
diff --git a/lib/OMakeroot.install b/lib/OMakeroot.install
index d1656e6..79d5797 100644
--- a/lib/OMakeroot.install
+++ b/lib/OMakeroot.install
@@ -1,7 +1,7 @@
#
# Required version of omake
#
-OMakeVersion(0.10.5, 0.10.5)
+OMakeVersion(0.10.6, 0.10.6)
########################################################################
# General configuration.
diff --git a/lib/Pervasives.install b/lib/Pervasives.install
index dae8567..dc40793 100644
--- a/lib/Pervasives.install
+++ b/lib/Pervasives.install
@@ -1,7 +1,7 @@
#
# Required version of omake
#
-OMakeVersion(0.10.5, 0.10.5)
+OMakeVersion(0.10.6, 0.10.6)
########################################################################
# Copyright (C) 2003-2007 Jason Hickey and Mojave Group
diff --git a/lib/build/C.install b/lib/build/C.install
index 09247d7..1bbc9b9 100644
--- a/lib/build/C.install
+++ b/lib/build/C.install
@@ -1,7 +1,7 @@
#
# Required version of omake
#
-OMakeVersion(0.10.5, 0.10.5)
+OMakeVersion(0.10.6, 0.10.6)
########################################################################
# Building C files.
diff --git a/lib/build/Common.install b/lib/build/Common.install
index 46da39a..d7d4708 100644
--- a/lib/build/Common.install
+++ b/lib/build/Common.install
@@ -1,7 +1,7 @@
#
# Required version of omake
#
-OMakeVersion(0.10.5, 0.10.5)
+OMakeVersion(0.10.6, 0.10.6)
########################################################################
# General configuration.
diff --git a/lib/build/LaTeX.install b/lib/build/LaTeX.install
index 55df0fa..8a3fecb 100644
--- a/lib/build/LaTeX.install
+++ b/lib/build/LaTeX.install
@@ -1,7 +1,7 @@
#
# Required version of omake
#
-OMakeVersion(0.10.5, 0.10.5)
+OMakeVersion(0.10.6, 0.10.6)
########################################################################
# Building LaTeX documents.
diff --git a/lib/build/OCaml.install b/lib/build/OCaml.install
index b80c6d7..6f5bb07 100644
--- a/lib/build/OCaml.install
+++ b/lib/build/OCaml.install
@@ -1,7 +1,7 @@
#
# Required version of omake
#
-OMakeVersion(0.10.5, 0.10.5)
+OMakeVersion(0.10.6, 0.10.6)
########################################################################
# Building OCaml programs.
diff --git a/lib/build/svn_realclean.install b/lib/build/svn_realclean.install
index a17ecf8..a7f8cc8 100644
--- a/lib/build/svn_realclean.install
+++ b/lib/build/svn_realclean.install
@@ -1,7 +1,7 @@
#
# Required version of omake
#
-OMakeVersion(0.10.5, 0.10.5)
+OMakeVersion(0.10.6, 0.10.6)
########################################################################
# Copyright (C) 2006 Aleksey Nogin
diff --git a/lib/configure/Configure.install b/lib/configure/Configure.install
index d4d364a..0c94cd4 100644
--- a/lib/configure/Configure.install
+++ b/lib/configure/Configure.install
@@ -1,7 +1,7 @@
#
# Required version of omake
#
-OMakeVersion(0.10.5, 0.10.5)
+OMakeVersion(0.10.6, 0.10.6)
#
# Configuration utilities
diff --git a/lib/configure/X.install b/lib/configure/X.install
index 17b6e0a..d7a1c19 100644
--- a/lib/configure/X.install
+++ b/lib/configure/X.install
@@ -1,7 +1,7 @@
#
# Required version of omake
#
-OMakeVersion(0.10.5, 0.10.5)
+OMakeVersion(0.10.6, 0.10.6)
#
# Some basic test for X.
diff --git a/lib/configure/fam.install b/lib/configure/fam.install
index da21d66..466becc 100644
--- a/lib/configure/fam.install
+++ b/lib/configure/fam.install
@@ -1,7 +1,7 @@
#
# Required version of omake
#
-OMakeVersion(0.10.5, 0.10.5)
+OMakeVersion(0.10.6, 0.10.6)
open configure/Configure
diff --git a/lib/configure/fs_case_sensitive.install b/lib/configure/fs_case_sensitive.install
index 0b6dd2a..1da37ca 100644
--- a/lib/configure/fs_case_sensitive.install
+++ b/lib/configure/fs_case_sensitive.install
@@ -1,7 +1,7 @@
#
# Required version of omake
#
-OMakeVersion(0.10.5, 0.10.5)
+OMakeVersion(0.10.6, 0.10.6)
open configure/Configure
diff --git a/lib/configure/moncontrol.install b/lib/configure/moncontrol.install
index f66b9bd..3c2a80b 100644
--- a/lib/configure/moncontrol.install
+++ b/lib/configure/moncontrol.install
@@ -1,7 +1,7 @@
#
# Required version of omake
#
-OMakeVersion(0.10.5, 0.10.5)
+OMakeVersion(0.10.6, 0.10.6)
open configure/Configure
diff --git a/lib/configure/ncurses.install b/lib/configure/ncurses.install
index 69d3261..91c2662 100644
--- a/lib/configure/ncurses.install
+++ b/lib/configure/ncurses.install
@@ -1,7 +1,7 @@
#
# Required version of omake
#
-OMakeVersion(0.10.5, 0.10.5)
+OMakeVersion(0.10.6, 0.10.6)
open configure/Configure
diff --git a/lib/configure/posix_spawn.install b/lib/configure/posix_spawn.install
index 57b0eaa..c0e84ea 100644
--- a/lib/configure/posix_spawn.install
+++ b/lib/configure/posix_spawn.install
@@ -1,7 +1,7 @@
#
# Required version of omake
#
-OMakeVersion(0.10.5, 0.10.5)
+OMakeVersion(0.10.6, 0.10.6)
open configure/Configure
diff --git a/lib/configure/readline.install b/lib/configure/readline.install
index 17cdfde..27c334d 100644
--- a/lib/configure/readline.install
+++ b/lib/configure/readline.install
@@ -1,7 +1,7 @@
#
# Required version of omake
#
-OMakeVersion(0.10.5, 0.10.5)
+OMakeVersion(0.10.6, 0.10.6)
#
# Readline configuration
diff --git a/lib/configure/snprintf.install b/lib/configure/snprintf.install
index d53453e..e2a3566 100644
--- a/lib/configure/snprintf.install
+++ b/lib/configure/snprintf.install
@@ -1,7 +1,7 @@
#
# Required version of omake
#
-OMakeVersion(0.10.5, 0.10.5)
+OMakeVersion(0.10.6, 0.10.6)
open configure/Configure
diff --git a/lib/parse/C/Lex.install b/lib/parse/C/Lex.install
index 3c6cd62..91f807d 100644
--- a/lib/parse/C/Lex.install
+++ b/lib/parse/C/Lex.install
@@ -1,7 +1,7 @@
#
# Required version of omake
#
-OMakeVersion(0.10.5, 0.10.5)
+OMakeVersion(0.10.6, 0.10.6)
#
# Lexer for C code
diff --git a/lib/parse/C/Parse.install b/lib/parse/C/Parse.install
index 868dbcc..83bf403 100644
--- a/lib/parse/C/Parse.install
+++ b/lib/parse/C/Parse.install
@@ -1,7 +1,7 @@
#
# Required version of omake
#
-OMakeVersion(0.10.5, 0.10.5)
+OMakeVersion(0.10.6, 0.10.6)
#
# Parser for C code
diff --git a/lib/parse/LaTeX/Lex.install b/lib/parse/LaTeX/Lex.install
index 9fe8746..9873db3 100644
--- a/lib/parse/LaTeX/Lex.install
+++ b/lib/parse/LaTeX/Lex.install
@@ -1,7 +1,7 @@
#
# Required version of omake
#
-OMakeVersion(0.10.5, 0.10.5)
+OMakeVersion(0.10.6, 0.10.6)
#
# Lexer for LaTeX code.
diff --git a/lib/parse/LaTeX/Macros.install b/lib/parse/LaTeX/Macros.install
index eff076d..08a4195 100644
--- a/lib/parse/LaTeX/Macros.install
+++ b/lib/parse/LaTeX/Macros.install
@@ -1,7 +1,7 @@
#
# Required version of omake
#
-OMakeVersion(0.10.5, 0.10.5)
+OMakeVersion(0.10.6, 0.10.6)
#
# Keep track of the arities of macros.
diff --git a/lib/parse/LaTeX/Parse.install b/lib/parse/LaTeX/Parse.install
index adfd659..8cb3bec 100644
--- a/lib/parse/LaTeX/Parse.install
+++ b/lib/parse/LaTeX/Parse.install
@@ -1,7 +1,7 @@
#
# Required version of omake
#
-OMakeVersion(0.10.5, 0.10.5)
+OMakeVersion(0.10.6, 0.10.6)
open parse/LaTeX/Macros
open parse/LaTeX/Lex
diff --git a/lib/parse/LaTeX/Spell.install b/lib/parse/LaTeX/Spell.install
index 18b242e..3d6fbdf 100644
--- a/lib/parse/LaTeX/Spell.install
+++ b/lib/parse/LaTeX/Spell.install
@@ -1,7 +1,7 @@
#
# Required version of omake
#
-OMakeVersion(0.10.5, 0.10.5)
+OMakeVersion(0.10.6, 0.10.6)
#
# Spell check a LaTeX file
diff --git a/lib/web/simple-xml.install b/lib/web/simple-xml.install
index f4d3898..66fc6c8 100644
--- a/lib/web/simple-xml.install
+++ b/lib/web/simple-xml.install
@@ -1,7 +1,7 @@
#
# Required version of omake
#
-OMakeVersion(0.10.5, 0.10.5)
+OMakeVersion(0.10.6, 0.10.6)
########################################################################
# Utilities
diff --git a/mk/osconfig_mingw.mk b/mk/osconfig_mingw.mk
index 816eff6..57b1892 100644
--- a/mk/osconfig_mingw.mk
+++ b/mk/osconfig_mingw.mk
@@ -31,7 +31,7 @@ EXT_LIB = .a
EXE = .exe
CCOMPTYPE = cc
-OCAMLFLAGS = -safe-string -strict-sequence -thread -w +a-4-32-30-42-40-41-48-50-52-60 -g $(OCAMLFLAGS_EXTRA)
+OCAMLFLAGS = -safe-string -strict-sequence -thread -w +a-4-32-30-42-40-41-48-50-52-60 -g -I +unix $(OCAMLFLAGS_EXTRA)
THREADSLIB = threads.cma
THREADSLIB_OPT = threads.cmxa
PREFERRED = .byte
diff --git a/mk/osconfig_msvc.mk b/mk/osconfig_msvc.mk
index 2c41c28..9b94304 100644
--- a/mk/osconfig_msvc.mk
+++ b/mk/osconfig_msvc.mk
@@ -33,7 +33,7 @@ EXE = .exe
CCOMPTYPE = msvc
STDLIB := $(shell $(OCAMLC) -where)
-OCAMLFLAGS = -safe-string -strict-sequence -thread -w +a-4-32-30-42-40-41-48-50-52-60 -g $(OCAMLFLAGS_EXTRA)
+OCAMLFLAGS = -safe-string -strict-sequence -thread -w +a-4-32-30-42-40-41-48-50-52-60 -g -I +unix $(OCAMLFLAGS_EXTRA)
THREADSLIB = threads.cma
THREADSLIB_OPT = threads.cmxa
PREFERRED = .byte
diff --git a/mk/osconfig_unix.mk b/mk/osconfig_unix.mk
index a826cf1..9f89232 100644
--- a/mk/osconfig_unix.mk
+++ b/mk/osconfig_unix.mk
@@ -31,7 +31,7 @@ EXT_LIB = .a
EXE =
CCOMPTYPE = cc
-OCAMLFLAGS = -safe-string -strict-sequence -g -w -40 $(OCAMLFLAGS_EXTRA)
+OCAMLFLAGS = -safe-string -strict-sequence -g -w -40 -I +unix $(OCAMLFLAGS_EXTRA)
THREADSLIB =
THREADSLIB_OPT =
PREFERRED = .byte
diff --git a/src/build/omake_build.ml b/src/build/omake_build.ml
index ec84d9a..70a935a 100644
--- a/src/build/omake_build.ml
+++ b/src/build/omake_build.ml
@@ -1698,7 +1698,7 @@ let save_aux (env : Omake_build_type.t) =
let db_tmp = Lm_printf.sprintf ".#%s.%s.%i" Omake_state.db_name (Unix.gethostname ()) pid in
(* Marshal the state to the output file *)
- let outx = Pervasives.open_out_bin db_tmp in
+ let outx = open_out_bin db_tmp in
let includes =
Omake_node.NodeTable.fold (fun includes node _ ->
Omake_node.NodeSet.add includes node) Omake_node.NodeSet.empty env.env_includes
@@ -2012,7 +2012,7 @@ let create_env exec options cache targets =
(* Summary file *)
let summary =
let summary, outx = Filename.open_temp_file ~mode:[Open_binary] "omake" ".error" in
- Pervasives.close_out outx;
+ close_out outx;
summary
in
let summary_value : Omake_value_type.t = ValNode (Omake_env.venv_intern venv PhonyProhibited summary) in
@@ -2128,7 +2128,7 @@ let load_osh venv options targets =
(* Add the summary file *)
let summary =
let summary, outx = Filename.open_temp_file ~mode:[Open_binary] "omake" ".error" in
- Pervasives.close_out outx;
+ close_out outx;
summary
in
let summary_value : Omake_value_type.t =
@@ -2263,12 +2263,12 @@ let print_summary ?(unlink = true) (env : Omake_build_type.t) =
let rec copy () =
let amount = input inx buffer 0 (Bytes.length buffer) in
if amount > 0 then begin
- Pervasives.output Pervasives.stderr buffer 0 amount;
+ output stderr buffer 0 amount;
copy ()
end
in
copy ();
- Pervasives.flush Pervasives.stderr;
+ flush stderr;
close_in inx;
if unlink then
Lm_unix_util.try_unlink_file env.env_summary
@@ -2322,7 +2322,7 @@ let rec build_targets (env : Omake_build_type.t) save_flag start_time parallel p
* Summary management.
*)
let create_tmpfile (env : Omake_build_type.t) =
- close_out @@ Pervasives.open_out_gen
+ close_out @@ open_out_gen
[Open_wronly; Open_binary; Open_creat; Open_trunc] 0o600 env.env_summary in
let () =
try
@@ -2526,7 +2526,7 @@ let build options dir_name targets =
build_time (Unix.gettimeofday ()) None options dir_name targets
with
BuildExit code ->
- Pervasives.exit code
+ exit code
let build_fun venv targets =
diff --git a/src/build/omake_build_util.ml b/src/build/omake_build_util.ml
index 6fa7523..2e06c0b 100644
--- a/src/build/omake_build_util.ml
+++ b/src/build/omake_build_util.ml
@@ -775,7 +775,7 @@ let wait_for_lock, unlock_db =
Lm_unix_util.ftruncate fd;
let outx = Unix.out_channel_of_descr fd in
Printf.fprintf outx "*** omake: the project was last locked by %s:%d.\n" (Unix.gethostname ()) (Unix.getpid ());
- Pervasives.flush outx
+ flush outx
with
Unix.Unix_error _
| Sys_error _
@@ -825,7 +825,7 @@ let save_aux (env : Omake_build_type.t) =
let db_tmp = Lm_printf.sprintf ".#%s.%s.%i" Omake_state.db_name (Unix.gethostname ()) pid in
(* Marshal the state to the output file *)
- let outx = Pervasives.open_out_bin db_tmp in
+ let outx = open_out_bin db_tmp in
let includes =
Omake_node.NodeTable.fold (fun includes node _ ->
Omake_node.NodeSet.add includes node) Omake_node.NodeSet.empty env.env_includes
diff --git a/src/clib/lm_channel.c b/src/clib/lm_channel.c
index aeec726..69d45f1 100644
--- a/src/clib/lm_channel.c
+++ b/src/clib/lm_channel.c
@@ -57,7 +57,7 @@ value omake_shell_peek_pipe(value v_fd)
&total, // Total number of bytes available
NULL); // Number of bytes in the next message
if(status == 0)
- failwith("Not a pipe");
+ caml_failwith("Not a pipe");
return total ? Val_int(1) : Val_int(0);
}
@@ -83,7 +83,7 @@ value omake_shell_pipe_kind(value v_fd)
value omake_shell_peek_pipe(value v_fd)
{
- failwith("omake_shell_peek_pipe: not available on Unix systems");
+ caml_failwith("omake_shell_peek_pipe: not available on Unix systems");
return Val_unit;
}
diff --git a/src/clib/lm_ctype.c b/src/clib/lm_ctype.c
index a643a00..36919ed 100644
--- a/src/clib/lm_ctype.c
+++ b/src/clib/lm_ctype.c
@@ -60,7 +60,7 @@ static value get_chars(int (*f)(int))
if(f(i))
*p++ = (char) i;
}
- s = alloc_string(p - buf);
+ s = caml_alloc_string(p - buf);
memcpy(Bp_val(s), buf, p - buf);
return s;
}
diff --git a/src/clib/lm_fs_case_sensitive.c b/src/clib/lm_fs_case_sensitive.c
index 247ca22..a5e1824 100644
--- a/src/clib/lm_fs_case_sensitive.c
+++ b/src/clib/lm_fs_case_sensitive.c
@@ -66,7 +66,7 @@ value lm_fs_case_sensitive_available(value _unit) {
value lm_fs_case_sensitive(value path_val) {
CAMLparam1(path_val);
struct statfs stat;
- char *path = String_val(path_val);
+ const char *path = String_val(path_val);
do {
caml_enter_blocking_section();
diff --git a/src/clib/lm_notify.c b/src/clib/lm_notify.c
index d56988c..32af0be 100644
--- a/src/clib/lm_notify.c
+++ b/src/clib/lm_notify.c
@@ -74,13 +74,13 @@ typedef struct {
#define CheckCode(fmt, expr) \
do { \
- enter_blocking_section(); \
+ caml_enter_blocking_section(); \
code = expr; \
- leave_blocking_section(); \
+ caml_leave_blocking_section(); \
if(code < 0) { \
char buffer[256]; \
ErrFmt(buffer, fmt); \
- failwith(buffer); \
+ caml_failwith(buffer); \
} \
} while(0)
@@ -145,11 +145,11 @@ value om_notify_open(value v_unit)
FAMInfo *info;
int code;
- v = alloc_custom(&fam_connection_ops, sizeof(FAMInfo), 0, 1);
+ v = caml_alloc_custom(&fam_connection_ops, sizeof(FAMInfo), 0, 1);
info = FAMInfo_val(v);
fc = malloc(sizeof(FAMConnection));
if(fc == 0)
- invalid_argument("om_notify_open: out of memory");
+ caml_invalid_argument("om_notify_open: out of memory");
info->fc = fc;
CheckCode("om_notify_open", FAMOpen(fc));
#ifdef HAVE_FAMNOEXISTS
@@ -180,7 +180,7 @@ value om_notify_fd(value v_fc)
fc = FAMConnection_val(v_fc);
return Val_int(fc->id);
#else /* FAM_PSEUDO && !FAM_INOTIFY */
- failwith("No file descriptors in pseudo-FAM");
+ caml_failwith("No file descriptors in pseudo-FAM");
return Val_unit;
#endif /* FAM_INOTIFY */
#else /* FAM_PSEUDO */
@@ -209,7 +209,7 @@ value om_notify_monitor_directory(value v_fc, value v_name, value v_recursive)
#ifdef WIN32
CheckCode("om_notify_monitor_directory", FAMMonitorDirectoryTree(fc, name, &request, 0));
#else /* WIN32 */
- failwith("om_notify_monitor_directory: recursive monitoring is not allowed");
+ caml_failwith("om_notify_monitor_directory: recursive monitoring is not allowed");
#endif /* !WIN32 */
}
else
@@ -294,13 +294,13 @@ value om_notify_next_event(value v_fc)
CheckCode("om_notify_next_event", FAMNextEvent(fc, &event));
code = event.code;
if(code < 1 || code > 10)
- failwith("om_notify_next_event: code out of bounds");
+ caml_failwith("om_notify_next_event: code out of bounds");
/* Allocate the string name */
- v_name = copy_string(event.filename);
+ v_name = caml_copy_string(event.filename);
/* Allocate the tuple */
- v_tuple = alloc_tuple(3);
+ v_tuple = caml_alloc_tuple(3);
Field(v_tuple, 0) = Val_int(event.fr.reqnum);
Field(v_tuple, 1) = v_name;
Field(v_tuple, 2) = Val_int(code - 1);
@@ -330,7 +330,7 @@ value om_notify_open(value v_unit)
*/
value om_notify_fd(value v_fc)
{
- invalid_argument("FAM not enabled");
+ caml_invalid_argument("FAM not enabled");
return Val_unit;
}
@@ -389,7 +389,7 @@ value om_notify_pending(value v_fc)
*/
value om_notify_next_event(value v_fc)
{
- invalid_argument("FAM not enabled");
+ caml_invalid_argument("FAM not enabled");
return Val_unit;
}
diff --git a/src/clib/lm_printf.c b/src/clib/lm_printf.c
index 2075543..2b07461 100644
--- a/src/clib/lm_printf.c
+++ b/src/clib/lm_printf.c
@@ -33,12 +33,12 @@ value ml_print_char(value v_fmt, value v_char)
char c = (char) Int_val(v_char);
#ifdef HAVE_SNPRINTF
if(snprintf(buffer, sizeof(buffer), fmt, c) < 0)
- failwith("ml_print_char");
+ caml_failwith("ml_print_char");
#else
if(sprintf(buffer, fmt, c) < 0)
- failwith("ml_print_char");
+ caml_failwith("ml_print_char");
#endif
- return copy_string(buffer);
+ return caml_copy_string(buffer);
}
/*
@@ -51,12 +51,12 @@ value ml_print_int(value v_fmt, value v_int)
int i = Int_val(v_int);
#ifdef HAVE_SNPRINTF
if(snprintf(buffer, sizeof(buffer), fmt, i) < 0)
- failwith("ml_print_int");
+ caml_failwith("ml_print_int");
#else
if(sprintf(buffer, fmt, i) < 0)
- failwith("ml_print_int");
+ caml_failwith("ml_print_int");
#endif
- return copy_string(buffer);
+ return caml_copy_string(buffer);
}
@@ -70,12 +70,12 @@ value ml_print_float(value v_fmt, value v_float)
double x = Double_val(v_float);
#ifdef HAVE_SNPRINTF
if(snprintf(buffer, sizeof(buffer), fmt, x) < 0)
- failwith("ml_print_float");
+ caml_failwith("ml_print_float");
#else
if(sprintf(buffer, fmt, x) < 0)
- failwith("ml_print_float");
+ caml_failwith("ml_print_float");
#endif
- return copy_string(buffer);
+ return caml_copy_string(buffer);
}
/*
@@ -104,7 +104,7 @@ value ml_print_string(value v_fmt, value v_string)
size = len * 2;
bufp = malloc(size);
if(bufp == 0)
- failwith("ml_print_string");
+ caml_failwith("ml_print_string");
}
#ifdef HAVE_SNPRINTF
@@ -115,9 +115,9 @@ value ml_print_string(value v_fmt, value v_string)
if(code < 0) {
if(bufp != buffer)
free(bufp);
- failwith("ml_print_string");
+ caml_failwith("ml_print_string");
}
- v_result = copy_string(bufp);
+ v_result = caml_copy_string(bufp);
if(bufp != buffer)
free(bufp);
return v_result;
@@ -152,7 +152,7 @@ value ml_print_string2(value v_width, value v_fmt, value v_string)
size = len * 2;
bufp = malloc(size);
if(bufp == 0)
- failwith("ml_print_string");
+ caml_failwith("ml_print_string");
}
#ifdef HAVE_SNPRINTF
@@ -163,9 +163,9 @@ value ml_print_string2(value v_width, value v_fmt, value v_string)
if(code < 0) {
if(bufp != buffer)
free(bufp);
- failwith("ml_print_string");
+ caml_failwith("ml_print_string");
}
- v_result = copy_string(bufp);
+ v_result = caml_copy_string(bufp);
if(bufp != buffer)
free(bufp);
return v_result;
diff --git a/src/clib/lm_terminfo.c b/src/clib/lm_terminfo.c
index 76c221d..29a0e2f 100644
--- a/src/clib/lm_terminfo.c
+++ b/src/clib/lm_terminfo.c
@@ -91,15 +91,15 @@ value caml_tgetstr(value id) {
in. */
#ifdef NCURSES
if(load_terminfo() == 0) {
- termdata = tigetstr(String_val(id));
+ termdata = tigetstr((char *) String_val(id));
}
#endif /* NCURSES */
/* Note that tigetstr will return either 0 or -1 on error. */
if(termdata == NULL || termdata == (char *)(-1)) {
- result = copy_string("");
+ result = caml_copy_string("");
} else {
- result = copy_string(termdata);
+ result = caml_copy_string(termdata);
/* apparently we're not supposed to free termdata here */
/* TEMP: I cannot find specs on this! */
//free(termdata);
diff --git a/src/clib/lm_termsize.c b/src/clib/lm_termsize.c
index b562442..471de5b 100644
--- a/src/clib/lm_termsize.c
+++ b/src/clib/lm_termsize.c
@@ -45,7 +45,7 @@ value caml_term_size(value arg)
CAMLlocal1(buf);
/* Return a pair of numbers */
- buf = alloc_small(2, 0);
+ buf = caml_alloc_small(2, 0);
/* Get the terminal size, return None on failure */
#ifdef WIN32
@@ -53,7 +53,7 @@ value caml_term_size(value arg)
HANDLE fd = *(HANDLE *)Data_custom_val(arg);
CONSOLE_SCREEN_BUFFER_INFO ConsoleInfo;
if (! GetConsoleScreenBufferInfo(fd, &ConsoleInfo))
- failwith("lm_termsize.c: caml_term_size: GetConsoleScreenBufferInfo failed");
+ caml_failwith("lm_termsize.c: caml_term_size: GetConsoleScreenBufferInfo failed");
Field(buf, 0) = Val_int(ConsoleInfo.dwSize.Y);
Field(buf, 1) = Val_int(ConsoleInfo.dwSize.X);
@@ -65,7 +65,7 @@ value caml_term_size(value arg)
struct winsize ws;
if(ioctl(fd, TIOCGWINSZ, &ws) < 0)
- failwith("lm_termsize.c: caml_term_size: not a terminal");
+ caml_failwith("lm_termsize.c: caml_term_size: not a terminal");
/* Return the pair of numbers */
Field(buf, 0) = Val_int(ws.ws_row);
diff --git a/src/clib/lm_uname_ext.c b/src/clib/lm_uname_ext.c
index 9a27683..a7fd6d7 100644
--- a/src/clib/lm_uname_ext.c
+++ b/src/clib/lm_uname_ext.c
@@ -147,21 +147,21 @@ value lm_uname(value x)
/* Get sysinfo */
if(uname(&name) < 0)
- failwith("uname");
+ caml_failwith("uname");
/* Copy data */
- result = alloc_tuple(5);
+ result = caml_alloc_tuple(5);
Field(result, 0) = Val_unit;
Field(result, 1) = Val_unit;
Field(result, 2) = Val_unit;
Field(result, 3) = Val_unit;
Field(result, 4) = Val_unit;
- Field(result, 0) = copy_string(name.sysname);
- Field(result, 1) = copy_string(name.nodename);
- Field(result, 2) = copy_string(name.release);
- Field(result, 3) = copy_string(name.version);
- Field(result, 4) = copy_string(name.machine);
+ Field(result, 0) = caml_copy_string(name.sysname);
+ Field(result, 1) = caml_copy_string(name.nodename);
+ Field(result, 2) = caml_copy_string(name.release);
+ Field(result, 3) = caml_copy_string(name.version);
+ Field(result, 4) = caml_copy_string(name.machine);
/* Return it */
CAMLreturn(result);
diff --git a/src/clib/lm_unix_cutil.c b/src/clib/lm_unix_cutil.c
index d894b7c..02ac10f 100644
--- a/src/clib/lm_unix_cutil.c
+++ b/src/clib/lm_unix_cutil.c
@@ -81,7 +81,7 @@ value home_win32(value v_unit)
TCHAR path[MAX_PATH];
if(SUCCEEDED(CompatSHGetFolderPath(NULL, CSIDL_LOCAL_APPDATA | CSIDL_FLAG_CREATE, NULL, 0, path)))
- CAMLreturn(copy_string(path));
+ CAMLreturn(caml_copy_string(path));
failwith("home_win32");
return Val_unit;
@@ -141,11 +141,11 @@ value lockf_win32(value v_fd, value v_kind, value v_len)
overlapped.Offset = pos;
/* Perform the lock */
- enter_blocking_section();
+ caml_enter_blocking_section();
code = LockFileEx(fd, flags, 0, len, 0, &overlapped);
if(code == 0)
error = GetLastError();
- leave_blocking_section();
+ caml_leave_blocking_section();
/* Fail if the lock was not successful */
if(code == 0) {
@@ -283,7 +283,7 @@ value caml_registry_find(value v_hkey, value v_subkey, value v_field)
#endif
/* Got the value */
- return copy_string(buffer);
+ return caml_copy_string(buffer);
}
#else /* WIN32 */
@@ -379,9 +379,9 @@ value lm_flock(value v_fd, value v_op)
op = Int_val(v_op);
#if defined(FLOCK_ENABLED)
cmd = flock_of_flock[op];
- enter_blocking_section();
+ caml_enter_blocking_section();
code = flock(fd, cmd);
- leave_blocking_section();
+ caml_leave_blocking_section();
#elif defined(FCNTL_ENABLED)
{
struct flock info;
@@ -390,9 +390,9 @@ value lm_flock(value v_fd, value v_op)
info.l_whence = SEEK_SET;
info.l_start = 0;
info.l_len = FLOCK_LEN;
- enter_blocking_section();
+ caml_enter_blocking_section();
code = fcntl(fd, cmd, &info);
- leave_blocking_section();
+ caml_leave_blocking_section();
}
#elif defined(LOCKF_ENABLED)
cmd = lockf_of_flock[op];
@@ -455,12 +455,12 @@ value lm_getpwents(value v_unit)
Store_field(entry, 2, Val_int(entryp->pw_uid));
Store_field(entry, 3, Val_int(entryp->pw_gid));
#ifdef __BEOS__
- Store_field(entry, 4, copy_string(""));
+ Store_field(entry, 4, caml_copy_string(""));
#else
- Store_field(entry, 4, copy_string(entryp->pw_gecos));
+ Store_field(entry, 4, caml_copy_string(entryp->pw_gecos));
#endif
- Store_field(entry, 5, copy_string(entryp->pw_dir));
- Store_field(entry, 6, copy_string(entryp->pw_shell));
+ Store_field(entry, 5, caml_copy_string(entryp->pw_dir));
+ Store_field(entry, 6, caml_copy_string(entryp->pw_shell));
cons = caml_alloc_tuple(2);
Store_field(cons, 0, entry);
Store_field(cons, 1, users);
diff --git a/src/clib/omake_shell_spawn.c b/src/clib/omake_shell_spawn.c
index 33d8cc5..232880a 100644
--- a/src/clib/omake_shell_spawn.c
+++ b/src/clib/omake_shell_spawn.c
@@ -555,7 +555,7 @@ main_exit:
return return_value;
#else
- invalid_argument("Omake_shell_spawn.compat_spawn");
+ caml_invalid_argument("Omake_shell_spawn.compat_spawn");
#endif
}
@@ -680,7 +680,7 @@ CAMLprim value omake_shell_spawn_posix_nat(value v_pg,
flags |= POSIX_SPAWN_SETPGROUP;
break;
case 2: /* Pg_new_fg_group */
- invalid_argument("Omake_Shell_Spawn_posix.posix_spawn: Pg_new_fg_group not supported");
+ caml_invalid_argument("Omake_Shell_Spawn_posix.posix_spawn: Pg_new_fg_group not supported");
break;
default:
RAISE_MAIN_ERROR(EINVAL, "omake_shell_spawn_posix/assert_pg");
@@ -705,7 +705,7 @@ CAMLprim value omake_shell_spawn_posix_nat(value v_pg,
break;
}
case 1: /* Sig_ignore */
- invalid_argument("Omake_Shell_Spawn_posix.posix_spawn: Sig_ignore not supported");
+ caml_invalid_argument("Omake_Shell_Spawn_posix.posix_spawn: Sig_ignore not supported");
break;
case 2: /* Sig_mask */
{
@@ -873,13 +873,13 @@ CAMLprim value omake_shell_spawn_posix_nat(value v_pg,
}
if (use_fork_exec) {
- failwith("USE_FORK_EXEC");
+ caml_failwith("USE_FORK_EXEC");
}
return return_value;
#else
- invalid_argument("Omake_shell_spawn.posix_spawn not available");
+ caml_invalid_argument("Omake_shell_spawn.posix_spawn not available");
#endif
}
@@ -899,6 +899,6 @@ CAMLprim value omake_shell_spawn_fchdir(value fd)
}
return Val_unit;
#else
- invalid_argument("Omake_shell_spawn.fchdir not available");
+ caml_invalid_argument("Omake_shell_spawn.fchdir not available");
#endif
}
diff --git a/src/env/omake_env.ml b/src/env/omake_env.ml
index 2621e2a..448c06a 100644
--- a/src/env/omake_env.ml
+++ b/src/env/omake_env.ml
@@ -5,7 +5,7 @@ module TargetElem = struct
if h1=h2 then
let p1 = String.compare s1 s2 in
if p1 = 0 then
- Pervasives.compare k1 k2
+ compare k1 k2
else
p1
else
@@ -2929,9 +2929,9 @@ let venv_find_implicit_rules_inner venv target =
let commands = make_command_info venv source_args irule.irule_values commands in
let effects =
List.fold_left (fun effects pattern ->
- let effect = Lm_wild.subst_in subst pattern in
- let effect = venv_intern_rule_target venv multiple (TargetString effect) in
- Omake_node.NodeSet.add effects effect) Omake_node.NodeSet.empty irule.irule_patterns
+ let eff = Lm_wild.subst_in subst pattern in
+ let eff = venv_intern_rule_target venv multiple (TargetString eff) in
+ Omake_node.NodeSet.add effects eff) Omake_node.NodeSet.empty irule.irule_patterns
in
let erule =
{ rule_loc = irule.irule_loc;
diff --git a/src/env/omake_gen_parse.ml b/src/env/omake_gen_parse.ml
index ed5ae1b..b674851 100644
--- a/src/env/omake_gen_parse.ml
+++ b/src/env/omake_gen_parse.ml
@@ -221,4 +221,4 @@ let main () =
copy inx outx
let () =
- Printexc.catch main ()
+ main ()
diff --git a/src/exec/omake_exec_remote.ml b/src/exec/omake_exec_remote.ml
index bb1b816..ac29f2a 100644
--- a/src/exec/omake_exec_remote.ml
+++ b/src/exec/omake_exec_remote.ml
@@ -5,6 +5,8 @@
*)
(* FIXME: the remote servers never terminate regularly *)
+let flush_channel = flush
+
open Lm_printf
open Lm_debug
@@ -103,22 +105,22 @@ module Server = struct
* Data is marshaled.
*)
- let stdin = Pervasives.stdin
- let stdout = Pervasives.stdout
+ let stdin = stdin
+ let stdout = stdout
(*
* Send the sync string.
*)
let send_sync () =
- Pervasives.output_string stdout sync_string;
- Pervasives.flush stdout
+ output_string stdout sync_string;
+ flush_channel stdout
(*
* The actual marshalers.
*)
let sendmsg out msg =
Marshal.to_channel out msg [];
- Pervasives.flush out
+ flush_channel out
let send_response response =
sendmsg stdout response
@@ -279,8 +281,8 @@ type 'value job_state =
* The state is an ssh channel.
*)
type ('exp, 'pid, 'value) t =
- { server_out : Pervasives.out_channel;
- server_in : Pervasives.in_channel;
+ { server_out : out_channel;
+ server_in : in_channel;
server_pid : int;
(* Keep track of running jobs, so we can kill them if the connection drops *)
@@ -341,8 +343,8 @@ type 'value job_state =
Unix.Unix_error _ ->
()
in
- Pervasives.close_out requestc;
- Pervasives.close_in responsec
+ close_out requestc;
+ close_in responsec
(*
* Start a new job.
diff --git a/src/exec/omake_exec_util.ml b/src/exec/omake_exec_util.ml
index c9d5850..47c394a 100644
--- a/src/exec/omake_exec_util.ml
+++ b/src/exec/omake_exec_util.ml
@@ -21,7 +21,7 @@ end)
module FdTable = Lm_map.LmMake (struct
type t = Unix.file_descr
- let compare = Pervasives.compare
+ let compare = compare
end
);;
@@ -73,7 +73,7 @@ let copy_file name =
* The files are created only if there is output.
*)
type tee_info =
- | TeeChannel of string * Pervasives.out_channel
+ | TeeChannel of string * out_channel
| TeeFile of string
| TeeMaybe
| TeeNever
@@ -104,7 +104,7 @@ let tee_channel tee =
let tee_close tee =
match !tee with
| TeeChannel (name, outx) ->
- Pervasives.close_out outx;
+ close_out outx;
tee := TeeFile name
| TeeFile _
| TeeMaybe
@@ -124,7 +124,7 @@ let tee_copy name fd flush_flag tee tee_only id buf off len =
flush_flag := true;
match !tee with
| TeeChannel (_, outx) ->
- Pervasives.flush outx
+ flush outx
| _ ->
()
end else begin
@@ -137,7 +137,7 @@ let tee_copy name fd flush_flag tee tee_only id buf off len =
end;
match tee_channel tee with
Some outx ->
- Pervasives.output outx buf off len
+ output outx buf off len
| None ->
()
end
diff --git a/src/front/lm_glob.ml b/src/front/lm_glob.ml
index 9ba83bb..1540206 100644
--- a/src/front/lm_glob.ml
+++ b/src/front/lm_glob.ml
@@ -808,7 +808,7 @@ let glob_argv_name options root dir name =
dirs
else
let names = List.append dirs names in
- List.sort Pervasives.compare names
+ List.sort compare names
else
let name = unescape options name in
let file_name = filename_concat dir name in
diff --git a/src/front/lm_hash_cons.ml b/src/front/lm_hash_cons.ml
index 2ad40a7..31b16fe 100644
--- a/src/front/lm_hash_cons.ml
+++ b/src/front/lm_hash_cons.ml
@@ -55,7 +55,7 @@ struct
let hash index = index
let compare (index1 : int) index2 =
- Pervasives.compare index1 index2
+ compare index1 index2
let map_array f state =
Array.mapi f
diff --git a/src/front/lm_parser.ml b/src/front/lm_parser.ml
index 8cec10f..29fa2fe 100644
--- a/src/front/lm_parser.ml
+++ b/src/front/lm_parser.ml
@@ -26,6 +26,8 @@ let debug_parse_conflict_is_warning =
debug_value = false
}
+let compare_values = compare
+
(*
* A precedence directive is left-associative, right-associative,
* or nonassociative.
@@ -279,7 +281,7 @@ struct
if cmp = 0 then
let cmp = ivar_list_compare right1 right2 in
if cmp = 0 then
- Pervasives.compare prec1 prec2
+ compare_values prec1 prec2
else
cmp
else
diff --git a/src/ir/omake_cache.mli b/src/ir/omake_cache.mli
index 984b770..12dee3d 100644
--- a/src/ir/omake_cache.mli
+++ b/src/ir/omake_cache.mli
@@ -25,7 +25,7 @@ val env_target : Omake_node.Node.t
(* Fetch the cache *)
val create : unit -> t
val from_channel : Omake_options.t -> in_channel -> t
-val to_channel : Pervasives.out_channel -> t -> unit
+val to_channel : out_channel -> t -> unit
(*
* Stats.
diff --git a/src/ir/omake_install.ml b/src/ir/omake_install.ml
index 5104603..94f7364 100644
--- a/src/ir/omake_install.ml
+++ b/src/ir/omake_install.ml
@@ -16,10 +16,10 @@ let copy_file force src dst =
in
if force || not (Sys.file_exists dst) || prompt () then
let () = Lm_printf.printf "*** omake: creating %s@." dst in
- let inx = Pervasives.open_in src in
- let outx = Pervasives.open_out dst in
+ let inx = open_in src in
+ let outx = open_out dst in
let rec copy () =
- Pervasives.output_char outx (input_char inx);
+ output_char outx (input_char inx);
copy ()
in
let () =
diff --git a/src/ir/omake_node.ml b/src/ir/omake_node.ml
index d495ca8..e38e286 100644
--- a/src/ir/omake_node.ml
+++ b/src/ir/omake_node.ml
@@ -158,7 +158,7 @@ and DirCompare : Lm_hash.MARSHAL_EQ with type t = DirElt.t=
let fine_compare (dir1 : t) (dir2 : t) =
match dir1, dir2 with
| DirRoot root1, DirRoot root2 ->
- Pervasives.compare root1 root2
+ compare root1 root2
| DirSub (_, name1, parent1), DirSub (_, name2, parent2) ->
let cmp = Lm_string_util.string_compare name1 name2 in
if cmp = 0 then
@@ -173,7 +173,7 @@ and DirCompare : Lm_hash.MARSHAL_EQ with type t = DirElt.t=
let coarse_compare (dir1 : t) ( dir2 : t) =
match dir1, dir2 with
| DirRoot root1, DirRoot root2 ->
- Pervasives.compare root1 root2
+ compare root1 root2
| DirSub (name1, _, parent1), DirSub (name2, _, parent2) ->
let cmp = FileCase.compare name1 name2 in
if cmp = 0 then
@@ -1612,7 +1612,7 @@ let pp_print_string_list buf sources =
List.iter (fun s -> Format.fprintf buf "@ %s" s) (List.sort String.compare sources)
(* let pp_compare_nodes n1 n2 = *)
-(* let cmp = Pervasives.compare (Node.kind n1) (Node.kind n2) in *)
+(* let cmp = compare (Node.kind n1) (Node.kind n2) in *)
(* if cmp = 0 then *)
(* let cmp = String.compare (Node.fullname n1) (Node.fullname n2) in *)
(* if cmp = 0 then *)
diff --git a/src/ir/omake_value_util.ml b/src/ir/omake_value_util.ml
index 4c8661e..ff5b40e 100644
--- a/src/ir/omake_value_util.ml
+++ b/src/ir/omake_value_util.ml
@@ -98,6 +98,8 @@ struct
| _ ->
raise (Invalid_argument "ValueCompare: value not supported")
+ let compare_values = (* Stdlib.*) compare
+
let rec compare v1 v2 =
match v1, v2 with
ValNone, ValNone ->
@@ -120,7 +122,7 @@ struct
| ValArray a1, ValArray a2 ->
compare_list a1 a2
| ValData s1, ValData s2 ->
- Pervasives.compare s1 s2
+ compare_values s1 s2
| ValNode node1, ValNode node2 ->
Omake_node.Node.compare node1 node2
| ValDir dir1, ValDir dir2 ->
diff --git a/src/libmojave/lm_channel.ml b/src/libmojave/lm_channel.ml
index 25ed36c..ebf74dc 100644
--- a/src/libmojave/lm_channel.ml
+++ b/src/libmojave/lm_channel.ml
@@ -1119,12 +1119,12 @@ module LexerInput =
* Restart at a previous position.
*)
let lex_restart channel pos =
- let { in_max = max;
+ let { in_max = in_max;
in_index = index;
_
} = channel
in
- assert (pos >= 0 && pos <= max - index);
+ assert (pos >= 0 && pos <= in_max - index);
channel.lex_index <- index + pos
(*
@@ -1162,7 +1162,7 @@ module LexerInput =
* We can't discard any of the existing data.
*)
let rec lex_fill channel =
- let { in_max = max;
+ let { in_max = in_max;
in_buffer = buffer;
in_index = start;
read_fun = reader;
@@ -1171,10 +1171,10 @@ module LexerInput =
} = channel
in
let len = Bytes.length buffer in
- let amount = len - max in
+ let amount = len - in_max in
(* If we have space, fill it *)
if amount > 1 then
- let count = reader buffer max (pred amount) in
+ let count = reader buffer in_max (pred amount) in
if count = 0 then
eof
else
@@ -1183,16 +1183,16 @@ module LexerInput =
count
else
let extra =
- if Bytes.get buffer (max + count - 1) = '\r' then
- reader buffer (max + count) 1
+ if Bytes.get buffer (in_max + count - 1) = '\r' then
+ reader buffer (in_max + count) 1
else
0
in
- squash_text buffer max (count + extra)
+ squash_text buffer in_max (count + extra)
in
- let c = Bytes.get buffer max in
- channel.in_max <- max + count;
- channel.lex_index <- succ max;
+ let c = Bytes.get buffer in_max in
+ channel.in_max <- in_max + count;
+ channel.lex_index <- succ in_max;
Char.code c
(* If we can shift left, do it *)
@@ -1210,8 +1210,8 @@ module LexerInput =
* Otherwise grow it.
*)
else
- let new_buffer = Bytes.create (Pervasives.max (len * 2) 32) in
- Bytes.blit buffer 0 new_buffer 0 max;
+ let new_buffer = Bytes.create (max (len * 2) 32) in
+ Bytes.blit buffer 0 new_buffer 0 in_max;
channel.in_buffer <- new_buffer;
lex_fill channel
@@ -1219,13 +1219,13 @@ module LexerInput =
* Get the next character in lex mode.
*)
let lex_next channel =
- let { in_max = max;
+ let { in_max = in_max;
in_buffer = buffer;
lex_index = index;
_
} = channel
in
- if index = max then
+ if index = in_max then
lex_fill channel
else
let c = Bytes.get buffer index in
@@ -1247,18 +1247,18 @@ module LexerInput =
channel_file = file;
lex_index = index;
in_buffer = buffer;
- in_max = max;
+ in_max = in_max;
_
} = channel
in
let line1, char1 =
- if index > max then
+ if index > in_max then
line, char
else
line_of_index channel buffer index
in
let line2, char2 =
- if index + off > max then
+ if index + off > in_max then
line1, char1
else
line_of_index channel buffer (index + off)
@@ -1269,14 +1269,14 @@ module LexerInput =
* Add any remaining buffered text to a buffer.
*)
let lex_buffer channel buf =
- let { in_max = max;
+ let { in_max = in_max;
in_buffer = buffer;
in_index = start;
_
} = channel
in
- Buffer.add_subbytes buf buffer start (max - start);
- channel.in_index <- max
+ Buffer.add_subbytes buf buffer start (in_max - start);
+ channel.in_index <- in_max
end
(*
diff --git a/src/libmojave/lm_db.ml b/src/libmojave/lm_db.ml
index 0fef5f3..9c7b13d 100644
--- a/src/libmojave/lm_db.ml
+++ b/src/libmojave/lm_db.ml
@@ -23,6 +23,9 @@
* the file format backward-compatible. So we stuff all the key/value
* pairs in the magic number.
*)
+
+let flush_channel = flush
+
open Lm_printf
open Lm_debug
@@ -259,7 +262,7 @@ let marshal_magic fd =
seek_and_truncate fd 0;
let outx = Unix.out_channel_of_descr fd in
output_binary_int outx magic;
- Pervasives.flush outx
+ flush_channel outx
let remove_entry fd _filename test =
let head = Bytes.create Marshal.header_size in
@@ -335,12 +338,12 @@ let marshal_tag outx tag =
let marshal_digest outx digest =
assert (String.length digest = digest_length);
- Pervasives.output_string outx digest
+ output_string outx digest
let marshal_string outx s =
let len = String.length s in
output_binary_int outx len;
- Pervasives.output_string outx s
+ output_string outx s
let marshal_strings outx sl =
let len =
@@ -366,7 +369,7 @@ let marshal_entry fd filename tag magic_number digest x =
Marshal.to_channel outx x [];
if !debug_db then
eprintf "Marshal.to_channel: %s: done@." filename;
- Pervasives.flush outx
+ flush_channel outx
let add fd filename ((code, _) as tag) magic digest x =
remove fd filename tag magic;
@@ -386,7 +389,7 @@ let append_entry fd filename tag strings digest x =
Marshal.to_channel outx x [];
if !debug_db then
eprintf "Marshal.to_channel: %s: done@." filename;
- Pervasives.flush outx
+ flush_channel outx
(*
* -*-
diff --git a/src/libmojave/lm_debug.ml b/src/libmojave/lm_debug.ml
index 66d0ae3..6629210 100644
--- a/src/libmojave/lm_debug.ml
+++ b/src/libmojave/lm_debug.ml
@@ -197,7 +197,7 @@ type profile = {
let tbl = Hashtbl.create 19
let compare (_,t1) (_,t2) =
- Pervasives.compare
+ compare
(t1.ok.wtime +. t1.exn.wtime) (t2.ok.wtime +. t2.exn.wtime)
let report1 s t =
diff --git a/src/libmojave/lm_int_set.ml b/src/libmojave/lm_int_set.ml
index ba9e6d5..88a7aae 100644
--- a/src/libmojave/lm_int_set.ml
+++ b/src/libmojave/lm_int_set.ml
@@ -2,7 +2,7 @@ module OrderedInt =
struct
type t = int
let compare (i : int) (j : int) =
- Pervasives.compare i j
+ compare i j
end
module IntSet = Lm_set.LmMake (OrderedInt)
diff --git a/src/libmojave/lm_notify.ml b/src/libmojave/lm_notify.ml
index 5fb976c..149a25e 100644
--- a/src/libmojave/lm_notify.ml
+++ b/src/libmojave/lm_notify.ml
@@ -11,13 +11,13 @@ let debug_notify =
module IntCompare =
struct
type t = int
- let compare (x : int) (y : int) = Pervasives.compare x y
+ let compare (x : int) (y : int) = compare x y
end
module StringCompare =
struct
type t = string
- let compare (x : string) (y : string) = Pervasives.compare x y
+ let compare (x : string) (y : string) = compare x y
end
module IntTable = Lm_map.LmMake (IntCompare)
diff --git a/src/libmojave/lm_printf.mli b/src/libmojave/lm_printf.mli
index 0438f94..19d37c6 100644
--- a/src/libmojave/lm_printf.mli
+++ b/src/libmojave/lm_printf.mli
@@ -31,7 +31,6 @@ val eprintf : ('a, Format.formatter, unit) format -> 'a
val printf : ('a, Format.formatter, unit) format -> 'a
val sprintf : ('a, unit, string) format -> 'a
val fprintf : Format.formatter -> ('a, Format.formatter, unit) format -> 'a
-val bprintf : Buffer.t -> ('a, Format.formatter, unit) format -> 'a
(*
* List printing helpers.
@@ -112,24 +111,17 @@ val get_ellipsis_text : unit -> string
(*
* Redirecting formatter output.
*)
-val set_formatter_out_channel : Pervasives.out_channel -> unit
+val set_formatter_out_channel : out_channel -> unit
val set_formatter_output_functions : (string -> int -> int -> unit) -> (unit -> unit) -> unit
val get_formatter_output_functions : unit -> (string -> int -> int -> unit) * (unit -> unit)
-val get_all_formatter_output_functions :
- unit ->
- (string -> int -> int -> unit) *
- (unit -> unit) *
- (unit -> unit) *
- (int -> unit)
-
(*
* Multiple formatted output.
*)
type formatter = Format.formatter
-val formatter_of_out_channel : Pervasives.out_channel -> formatter
+val formatter_of_out_channel : out_channel -> formatter
val std_formatter : formatter
val err_formatter : formatter
val str_formatter : formatter
@@ -173,20 +165,12 @@ val pp_get_max_boxes : formatter -> unit -> int
val pp_over_max_boxes : formatter -> unit -> bool
val pp_set_ellipsis_text : formatter -> string -> unit
val pp_get_ellipsis_text : formatter -> unit -> string
-val pp_set_formatter_out_channel : formatter -> Pervasives.out_channel -> unit
+val pp_set_formatter_out_channel : formatter -> out_channel -> unit
val pp_set_formatter_output_functions :
formatter -> (string -> int -> int -> unit) -> (unit -> unit) -> unit
-val pp_get_all_formatter_output_functions :
- formatter ->
- unit ->
- (string -> int -> int -> unit) *
- (unit -> unit) *
- (unit -> unit) *
- (int -> unit)
-
(* Prints a "; "- separated list. *)
val pp_print_any_list : (formatter -> 'a -> unit) -> formatter -> 'a list -> unit
diff --git a/src/libmojave/lm_string_set.ml b/src/libmojave/lm_string_set.ml
index 3dc9212..8e09dd7 100644
--- a/src/libmojave/lm_string_set.ml
+++ b/src/libmojave/lm_string_set.ml
@@ -47,7 +47,7 @@ module StringMTable = Lm_map.LmMakeList (OrderedString)
*)
module LexOrderedString = struct
type t = string
- let compare (s1: t) s2 = Pervasives.compare s1 s2
+ let compare (s1: t) s2 = compare s1 s2
end
module LexStringSet = Lm_set.LmMake (LexOrderedString)
diff --git a/src/libmojave/lm_string_util.ml b/src/libmojave/lm_string_util.ml
index c3a2ef2..2737cdb 100644
--- a/src/libmojave/lm_string_util.ml
+++ b/src/libmojave/lm_string_util.ml
@@ -22,11 +22,11 @@ let rec string_compare_aux s1 s2 len i =
if c1 = c2 then
string_compare_aux s1 s2 len (i+1)
else
- Pervasives.compare c1 c2
+ compare c1 c2
let string_compare s1 s2 =
let len1 = String.length s1 in
- match Pervasives.compare len1 (String.length s2) with
+ match compare len1 (String.length s2) with
0 -> string_compare_aux s1 s2 len1 0
| i -> i
diff --git a/src/libmojave/lm_unix_util.ml b/src/libmojave/lm_unix_util.ml
index e1d2113..2899388 100644
--- a/src/libmojave/lm_unix_util.ml
+++ b/src/libmojave/lm_unix_util.ml
@@ -59,7 +59,7 @@ let finally x f action =
let with_file_fmt (file : string) (action : Format.formatter -> 'a) : 'a =
let outx =
- Pervasives.open_out_gen [Open_wronly; Open_binary; Open_creat; Open_append]
+ open_out_gen [Open_wronly; Open_binary; Open_creat; Open_append]
0o600 file in
let buf = Format.formatter_of_out_channel outx in
match action buf with
diff --git a/src/magic/omake_gen_magic.ml b/src/magic/omake_gen_magic.ml
index c2b9329..f200153 100644
--- a/src/magic/omake_gen_magic.ml
+++ b/src/magic/omake_gen_magic.ml
@@ -287,4 +287,4 @@ let main () =
exit 2
let _ =
- Printexc.catch main ()
+ main ()
diff --git a/src/main/omake_shell.ml b/src/main/omake_shell.ml
index 614ef9c..406ec4a 100644
--- a/src/main/omake_shell.ml
+++ b/src/main/omake_shell.ml
@@ -136,7 +136,7 @@ let set_current_directory venv =
*)
let exit code =
Lm_readline.save ();
- Pervasives.exit code
+ exit code
(*
* Abort if asked.
diff --git a/src/shell/omake_shell_sys_unix.ml b/src/shell/omake_shell_sys_unix.ml
index f635abf..c41238e 100644
--- a/src/shell/omake_shell_sys_unix.ml
+++ b/src/shell/omake_shell_sys_unix.ml
@@ -31,7 +31,7 @@ let setpgid pid1 pid2 =
module FdCompare =
struct
type t = Unix.file_descr
- let compare = Pervasives.compare
+ let compare = compare
end
module FdSet = Lm_set.LmMake (FdCompare);;
@@ -161,7 +161,7 @@ let create_thread info =
create_thread_background = bg
} = info
in
- Pervasives.flush_all();
+ flush_all();
Lm_unix_util.moncontrol false;
let pid = Unix.fork () in
if pid = 0 then
diff --git a/src/shell/omake_shell_sys_win32.ml b/src/shell/omake_shell_sys_win32.ml
index a3fc8e5..6109493 100644
--- a/src/shell/omake_shell_sys_win32.ml
+++ b/src/shell/omake_shell_sys_win32.ml
@@ -34,7 +34,7 @@ let () =
if pid == Unix.getpid () then
close ()
in
- Pervasives.at_exit do_close
+ at_exit do_close
let set_interactive _ = ()
let set_close_on_exec = Unix.set_close_on_exec
@@ -101,7 +101,7 @@ let create_thread info =
_
} = info
in
- Pervasives.flush_all();
+ flush_all();
let pid = create_thread_pid pgrp in
let stdin = Unix.dup stdin in
let stdout = Unix.dup stdout in
diff --git a/version.txt b/version.txt
index 9028ec6..69da6eb 100644
--- a/version.txt
+++ b/version.txt
@@ -1 +1 @@
-0.10.5
+0.10.6