<?xml version="1.0" encoding="ISO-8859-1"?>

<!DOCTYPE message PUBLIC
  "-//MLarc//DTD MLarc output files//EN"
  "../../mlarc.dtd"[
  <!ATTLIST message
    listname CDATA #REQUIRED
    title CDATA #REQUIRED
  >
]>

  <?xml-stylesheet href="../../mlarc.xsl" type="text/xsl"?>


<message 
  url="2003/07/3df9d69f6b18b9279873b911297d0c59"
  from="Gerd Stolpmann &lt;info@g...&gt;"
  author="Gerd Stolpmann"
  date="2003-07-25T12:52:16"
  subject="[Caml-list] 3.07beta"
  prev="2003/07/80e9a2f2a91f3890b8725c6915cc2f2a"
  next="2003/07/ad9f0f2ad89ba5adecee3a27dbb127f5"
  prev-thread="2003/07/2aadf483f3e89d9c785e4c8aa61c83c5"
  next-thread="2003/07/3efc0b8ed93aaf555ae070c71afdf206"
  root="../../"
  period="month"
  listname="caml-list"
  title="Archives of the Caml mailing list">

<thread subject="[Caml-list] 3.07beta">
<msg 
  url="2003/07/3df9d69f6b18b9279873b911297d0c59"
  from="Gerd Stolpmann &lt;info@g...&gt;"
  author="Gerd Stolpmann"
  date="2003-07-25T12:52:16"
  subject="[Caml-list] 3.07beta">
</msg>
</thread>

<contents>
Hi list, especially the beta testers,

before I get more mails, and have to explain it to everybody again:
findlib does not work with 3.07beta without applying the patch attached
below. This is not a bug of findlib, but an interface change in 3.07beta
that will be reverted in 3.07final (it is already changed in CVS).

In the case your programs are affected, too: In 3.07beta, Arg.parse sets
Arg.current to 0 before it starts parsing, so you cannot skip arguments
before you call Arg.parse.

Now the patch that avoids this problem with 3.07beta:

----------------------------------snip------------------------------
--- frontend.ml.orig    2003-01-13 01:41:27.000000000 +0100
+++ frontend.ml 2003-07-24 15:31:53.000000000 +0200
@@ -355,7 +355,7 @@
   in
 

-  Arg.parse
+  Arg.parse_argv Sys.argv
     [ "-predicates", Arg.String append_predicate,
                   "      specifies comma-separated list of assumed
predicates";
       "-format", Arg.String (fun s -&gt; format := s),
@@ -551,7 +551,7 @@
     Arg.String (fun s -&gt; dll_pkgs := !dll_pkgs @ (Fl_split.in_words s))
in
 

-  Arg.parse
+  Arg.parse_argv Sys.argv
     (List.flatten
     [ [
       "-package", add_pkg,
@@ -1076,7 +1076,7 @@
   let add_pkg =
     Arg.String (fun s -&gt; packages := !packages @ (Fl_split.in_words s))
in
 
-  Arg.parse
+  Arg.parse_argv Sys.argv
       [
        "-syntax", add_syntax_pred,
                 " &lt;p&gt;       Use preprocessor with predicate &lt;p&gt;";
@@ -1172,7 +1172,7 @@
   let add_pkg =
     Arg.String (fun s -&gt; packages := !packages @ (Fl_split.in_words s))
in
 
-  Arg.parse
+  Arg.parse_argv Sys.argv
       [
        "-I", add_spec "-I",
            " &lt;dir&gt;          Add &lt;dir&gt; to the list of include
directories";
@@ -1342,7 +1342,7 @@
   let errmsg = "usage: ocamlfind install [options] &lt;package_name&gt;
&lt;file&gt; ..." in
 
   Arg.current := 1;
-  Arg.parse
+  Arg.parse_argv Sys.argv
         keywords
        (fun s -&gt;
           if !pkgname = ""
@@ -1498,7 +1498,7 @@
   let errmsg = "usage: ocamlfind remove [options] &lt;package_name&gt;" in
 
   Arg.current := 1;
-  Arg.parse
+  Arg.parse_argv Sys.argv
         keywords
        (fun s -&gt;
           if !pkgname = ""
@@ -1604,7 +1604,7 @@
   let errmsg = "usage: ocamlfind guess [options] &lt;package_name&gt; &lt;file&gt;
..." in
 
   Arg.current := 1;
-  Arg.parse
+  Arg.parse_argv Sys.argv
         keywords
        (fun s -&gt;
           if !pkgname = ""
@@ -1654,7 +1654,7 @@
   let errmsg = "usage: ocamlfind printconf
(conf|path|destdir|metadir|stdlib|ldconf)" in
 
   Arg.current := 1;
-  Arg.parse
+  Arg.parse_argv Sys.argv
         []
        (fun s -&gt;
           if !var &lt;&gt; None then raise(Arg.Bad "Unexpected argument");
----------------------------------snip------------------------------

Gerd
-- 
------------------------------------------------------------
Gerd Stolpmann * Viktoriastr. 45 * 64293 Darmstadt * Germany 
gerd@gerd-stolpmann.de          http://www.gerd-stolpmann.de
------------------------------------------------------------

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners

</contents>

</message>

