[packages/ocaml-idl] - OCaml 4.03 compatibility fix - rel 14

baggins baggins at pld-linux.org
Mon Jun 5 19:07:13 CEST 2017


commit 76c03e96d41ab59c67c0140599642d8543766466
Author: Jan Rękorajski <baggins at pld-linux.org>
Date:   Mon Jun 5 17:07:01 2017 +0000

    - OCaml 4.03 compatibility fix
    - rel 14

 array-stdlib.patch | 372 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 ocaml-idl.spec     |   4 +-
 2 files changed, 375 insertions(+), 1 deletion(-)
---
diff --git a/ocaml-idl.spec b/ocaml-idl.spec
index 7fd7f19..87527e3 100644
--- a/ocaml-idl.spec
+++ b/ocaml-idl.spec
@@ -12,7 +12,7 @@ Summary:	CamlIDL - stub code generator and COM binding for OCaml
 Summary(pl.UTF-8):	CamlIDL - generator kodu zaślepek oraz wiązania COM dla OCamla
 Name:		ocaml-idl
 Version:	1.05
-Release:	13
+Release:	14
 License:	QPL v1.0 (compiler), LGPL v2 (library)
 Group:		Libraries
 Source0:	http://caml.inria.fr/distrib/bazar-ocaml/camlidl-%{version}.tar.gz
@@ -20,6 +20,7 @@ Source0:	http://caml.inria.fr/distrib/bazar-ocaml/camlidl-%{version}.tar.gz
 Source1:	http://caml.inria.fr/distrib/bazar-ocaml/camlidl-%{version}.doc.html.tar.gz
 # Source1-md5:	b7c7dad3ba62ddcc0f687bdebe295126
 Patch0:		no-opt.patch
+Patch1:		array-stdlib.patch
 URL:		http://caml.inria.fr/pub/old_caml_site/camlidl/
 BuildRequires:	ocaml >= %{ocaml_ver}
 Obsoletes:	ocaml-camlidl < 1.05-3
@@ -80,6 +81,7 @@ tej biblioteki.
 %prep
 %setup -q -a 1 -n camlidl-%{version}
 %patch0 -p1
+%patch1 -p1
 
 ln -s Makefile.unix config/Makefile
 
diff --git a/array-stdlib.patch b/array-stdlib.patch
new file mode 100644
index 0000000..dd6abe6
--- /dev/null
+++ b/array-stdlib.patch
@@ -0,0 +1,372 @@
+From b58227902eb69a5c38819f587fcb02c92d5627d4 Mon Sep 17 00:00:00 2001
+From: Xavier Leroy <xavierleroy at users.noreply.github.com>
+Date: Wed, 29 Jun 2016 12:07:20 +0000
+Subject: [PATCH] OCaml 4.03 compatibility: rename array.ml -> idlarray.ml
+
+Also add missing include in runtime/comerror.c
+---
+ compiler/.depend                     | 237 ++++++++++++++++++-----------------
+ compiler/Makefile                    |   2 +-
+ compiler/cvtval.ml                   |  20 +--
+ compiler/{array.ml => idlarray.ml}   |   0
+ compiler/{array.mli => idlarray.mli} |   0
+ lib/.depend                          |   5 +-
+ runtime/comerror.c                   |   4 +-
+ 7 files changed, 140 insertions(+), 128 deletions(-)
+ rename compiler/{array.ml => idlarray.ml} (100%)
+ rename compiler/{array.mli => idlarray.mli} (100%)
+
+diff --git a/compiler/.depend b/compiler/.depend
+index d014910..cb26661 100644
+--- a/compiler/.depend
++++ b/compiler/.depend
+@@ -1,114 +1,123 @@
+-array.cmi: idltypes.cmi prefix.cmi 
+-constdecl.cmi: idltypes.cmi 
+-cvttyp.cmi: idltypes.cmi 
+-cvtval.cmi: idltypes.cmi prefix.cmi 
+-enumdecl.cmi: idltypes.cmi 
+-enum.cmi: idltypes.cmi 
+-file.cmi: constdecl.cmi funct.cmi idltypes.cmi intf.cmi typedef.cmi 
+-fixlabels.cmi: file.cmi 
+-funct.cmi: idltypes.cmi 
+-intf.cmi: funct.cmi idltypes.cmi 
+-lexer_midl.cmi: parser_midl.cmi 
+-lexpr.cmi: idltypes.cmi 
+-normalize.cmi: file.cmi 
+-parse_aux.cmi: file.cmi funct.cmi idltypes.cmi typedef.cmi 
+-parse.cmi: file.cmi 
+-parser_midl.cmi: file.cmi 
+-predef.cmi: intf.cmi typedef.cmi 
+-prefix.cmi: idltypes.cmi 
+-structdecl.cmi: idltypes.cmi 
+-struct.cmi: idltypes.cmi prefix.cmi 
+-typedef.cmi: idltypes.cmi 
+-uniondecl.cmi: idltypes.cmi 
+-union.cmi: idltypes.cmi prefix.cmi 
+-variables.cmi: idltypes.cmi 
+-array.cmo: cvttyp.cmi idltypes.cmi lexpr.cmi utils.cmi variables.cmi \
+-    array.cmi 
+-array.cmx: cvttyp.cmx idltypes.cmi lexpr.cmx utils.cmx variables.cmx \
+-    array.cmi 
+-clflags.cmo: config.cmi 
+-clflags.cmx: config.cmx 
+-config.cmo: config.cmi 
+-config.cmx: config.cmi 
+-constdecl.cmo: cvttyp.cmi idltypes.cmi lexpr.cmi utils.cmi constdecl.cmi 
+-constdecl.cmx: cvttyp.cmx idltypes.cmi lexpr.cmx utils.cmx constdecl.cmi 
+-cvttyp.cmo: config.cmi idltypes.cmi lexpr.cmi utils.cmi cvttyp.cmi 
+-cvttyp.cmx: config.cmx idltypes.cmi lexpr.cmx utils.cmx cvttyp.cmi 
+-cvtval.cmo: array.cmi cvttyp.cmi enum.cmi idltypes.cmi lexpr.cmi struct.cmi \
+-    union.cmi utils.cmi variables.cmi cvtval.cmi 
+-cvtval.cmx: array.cmx cvttyp.cmx enum.cmx idltypes.cmi lexpr.cmx struct.cmx \
+-    union.cmx utils.cmx variables.cmx cvtval.cmi 
+-enumdecl.cmo: cvttyp.cmi cvtval.cmi enum.cmi idltypes.cmi utils.cmi \
+-    variables.cmi enumdecl.cmi 
+-enumdecl.cmx: cvttyp.cmx cvtval.cmx enum.cmx idltypes.cmi utils.cmx \
+-    variables.cmx enumdecl.cmi 
+-enum.cmo: idltypes.cmi utils.cmi variables.cmi enum.cmi 
+-enum.cmx: idltypes.cmi utils.cmx variables.cmx enum.cmi 
+-file.cmo: clflags.cmo constdecl.cmi enumdecl.cmi funct.cmi idltypes.cmi \
+-    intf.cmi structdecl.cmi typedef.cmi uniondecl.cmi utils.cmi file.cmi 
+-file.cmx: clflags.cmx constdecl.cmx enumdecl.cmx funct.cmx idltypes.cmi \
+-    intf.cmx structdecl.cmx typedef.cmx uniondecl.cmx utils.cmx file.cmi 
+-fixlabels.cmo: clflags.cmo file.cmi funct.cmi idltypes.cmi intf.cmi \
+-    typedef.cmi utils.cmi fixlabels.cmi 
+-fixlabels.cmx: clflags.cmx file.cmx funct.cmx idltypes.cmi intf.cmx \
+-    typedef.cmx utils.cmx fixlabels.cmi 
+-funct.cmo: cvttyp.cmi cvtval.cmi idltypes.cmi lexpr.cmi prefix.cmi \
+-    typedef.cmi utils.cmi variables.cmi funct.cmi 
+-funct.cmx: cvttyp.cmx cvtval.cmx idltypes.cmi lexpr.cmx prefix.cmx \
+-    typedef.cmx utils.cmx variables.cmx funct.cmi 
+-intf.cmo: cvttyp.cmi cvtval.cmi funct.cmi idltypes.cmi prefix.cmi utils.cmi \
+-    variables.cmi intf.cmi 
+-intf.cmx: cvttyp.cmx cvtval.cmx funct.cmx idltypes.cmi prefix.cmx utils.cmx \
+-    variables.cmx intf.cmi 
+-lexer_midl.cmo: parse_aux.cmi parser_midl.cmi utils.cmi lexer_midl.cmi 
+-lexer_midl.cmx: parse_aux.cmx parser_midl.cmx utils.cmx lexer_midl.cmi 
+-lexpr.cmo: config.cmi idltypes.cmi prefix.cmi utils.cmi lexpr.cmi 
+-lexpr.cmx: config.cmx idltypes.cmi prefix.cmx utils.cmx lexpr.cmi 
+-linenum.cmo: linenum.cmi 
+-linenum.cmx: linenum.cmi 
+-main.cmo: clflags.cmo file.cmi idltypes.cmi normalize.cmi utils.cmi 
+-main.cmx: clflags.cmx file.cmx idltypes.cmi normalize.cmx utils.cmx 
+-normalize.cmo: constdecl.cmi cvttyp.cmi file.cmi fixlabels.cmi funct.cmi \
+-    idltypes.cmi intf.cmi parse.cmi predef.cmi typedef.cmi utils.cmi \
+-    normalize.cmi 
+-normalize.cmx: constdecl.cmx cvttyp.cmx file.cmx fixlabels.cmx funct.cmx \
+-    idltypes.cmi intf.cmx parse.cmx predef.cmx typedef.cmx utils.cmx \
+-    normalize.cmi 
+-parse_aux.cmo: constdecl.cmi cvttyp.cmi file.cmi funct.cmi idltypes.cmi \
+-    intf.cmi linenum.cmi predef.cmi typedef.cmi parse_aux.cmi 
+-parse_aux.cmx: constdecl.cmx cvttyp.cmx file.cmx funct.cmx idltypes.cmi \
+-    intf.cmx linenum.cmx predef.cmx typedef.cmx parse_aux.cmi 
+-parse.cmo: clflags.cmo lexer_midl.cmi linenum.cmi parse_aux.cmi \
+-    parser_midl.cmi utils.cmi parse.cmi 
+-parse.cmx: clflags.cmx lexer_midl.cmx linenum.cmx parse_aux.cmx \
+-    parser_midl.cmx utils.cmx parse.cmi 
+-parser_midl.cmo: constdecl.cmi cvttyp.cmi file.cmi funct.cmi idltypes.cmi \
+-    intf.cmi parse_aux.cmi typedef.cmi parser_midl.cmi 
+-parser_midl.cmx: constdecl.cmx cvttyp.cmx file.cmx funct.cmx idltypes.cmi \
+-    intf.cmx parse_aux.cmx typedef.cmx parser_midl.cmi 
+-predef.cmo: idltypes.cmi intf.cmi typedef.cmi predef.cmi 
+-predef.cmx: idltypes.cmi intf.cmx typedef.cmx predef.cmi 
+-prefix.cmo: idltypes.cmi utils.cmi prefix.cmi 
+-prefix.cmx: idltypes.cmi utils.cmx prefix.cmi 
+-structdecl.cmo: cvttyp.cmi cvtval.cmi idltypes.cmi prefix.cmi struct.cmi \
+-    utils.cmi variables.cmi structdecl.cmi 
+-structdecl.cmx: cvttyp.cmx cvtval.cmx idltypes.cmi prefix.cmx struct.cmx \
+-    utils.cmx variables.cmx structdecl.cmi 
+-struct.cmo: cvttyp.cmi idltypes.cmi lexpr.cmi prefix.cmi utils.cmi \
+-    variables.cmi struct.cmi 
+-struct.cmx: cvttyp.cmx idltypes.cmi lexpr.cmx prefix.cmx utils.cmx \
+-    variables.cmx struct.cmi 
+-typedef.cmo: cvttyp.cmi cvtval.cmi idltypes.cmi prefix.cmi utils.cmi \
+-    variables.cmi typedef.cmi 
+-typedef.cmx: cvttyp.cmx cvtval.cmx idltypes.cmi prefix.cmx utils.cmx \
+-    variables.cmx typedef.cmi 
+-uniondecl.cmo: cvttyp.cmi cvtval.cmi idltypes.cmi prefix.cmi union.cmi \
+-    utils.cmi variables.cmi uniondecl.cmi 
+-uniondecl.cmx: cvttyp.cmx cvtval.cmx idltypes.cmi prefix.cmx union.cmx \
+-    utils.cmx variables.cmx uniondecl.cmi 
+-union.cmo: cvttyp.cmi idltypes.cmi utils.cmi variables.cmi union.cmi 
+-union.cmx: cvttyp.cmx idltypes.cmi utils.cmx variables.cmx union.cmi 
+-utils.cmo: utils.cmi 
+-utils.cmx: utils.cmi 
+-variables.cmo: cvttyp.cmi idltypes.cmi utils.cmi variables.cmi 
+-variables.cmx: cvttyp.cmx idltypes.cmi utils.cmx variables.cmi 
++config.cmi :
++constdecl.cmi : idltypes.cmi
++cvttyp.cmi : idltypes.cmi
++cvtval.cmi : prefix.cmi idltypes.cmi
++enum.cmi : prefix.cmi idltypes.cmi
++enumdecl.cmi : idltypes.cmi
++file.cmi : typedef.cmi intf.cmi idltypes.cmi funct.cmi constdecl.cmi
++fixlabels.cmi : file.cmi
++funct.cmi : idltypes.cmi
++idlarray.cmi : prefix.cmi idltypes.cmi
++idltypes.cmi :
++intf.cmi : idltypes.cmi funct.cmi
++lexer_midl.cmi : parser_midl.cmi
++lexer_simple.cmi :
++lexpr.cmi : prefix.cmi idltypes.cmi
++linenum.cmi :
++normalize.cmi : file.cmi
++parse.cmi : file.cmi
++parse_aux.cmi : typedef.cmi idltypes.cmi funct.cmi file.cmi constdecl.cmi
++parser_midl.cmi : file.cmi
++predef.cmi : typedef.cmi intf.cmi
++prefix.cmi : idltypes.cmi
++struct.cmi : prefix.cmi idltypes.cmi
++structdecl.cmi : idltypes.cmi
++typedef.cmi : idltypes.cmi
++union.cmi : prefix.cmi idltypes.cmi
++uniondecl.cmi : idltypes.cmi
++utils.cmi :
++variables.cmi : idltypes.cmi
++clflags.cmo : config.cmi
++clflags.cmx : config.cmx
++config.cmo : config.cmi
++config.cmx : config.cmi
++constdecl.cmo : utils.cmi prefix.cmi lexpr.cmi idltypes.cmi cvttyp.cmi \
++    constdecl.cmi
++constdecl.cmx : utils.cmx prefix.cmx lexpr.cmx idltypes.cmi cvttyp.cmx \
++    constdecl.cmi
++cvttyp.cmo : utils.cmi prefix.cmi lexpr.cmi idltypes.cmi config.cmi \
++    cvttyp.cmi
++cvttyp.cmx : utils.cmx prefix.cmx lexpr.cmx idltypes.cmi config.cmx \
++    cvttyp.cmi
++cvtval.cmo : variables.cmi utils.cmi union.cmi struct.cmi lexpr.cmi \
++    idltypes.cmi idlarray.cmi enum.cmi cvttyp.cmi cvtval.cmi
++cvtval.cmx : variables.cmx utils.cmx union.cmx struct.cmx lexpr.cmx \
++    idltypes.cmi idlarray.cmx enum.cmx cvttyp.cmx cvtval.cmi
++enum.cmo : variables.cmi utils.cmi idltypes.cmi enum.cmi
++enum.cmx : variables.cmx utils.cmx idltypes.cmi enum.cmi
++enumdecl.cmo : variables.cmi utils.cmi idltypes.cmi enum.cmi cvtval.cmi \
++    cvttyp.cmi enumdecl.cmi
++enumdecl.cmx : variables.cmx utils.cmx idltypes.cmi enum.cmx cvtval.cmx \
++    cvttyp.cmx enumdecl.cmi
++file.cmo : utils.cmi uniondecl.cmi typedef.cmi structdecl.cmi intf.cmi \
++    idltypes.cmi funct.cmi enumdecl.cmi constdecl.cmi clflags.cmo file.cmi
++file.cmx : utils.cmx uniondecl.cmx typedef.cmx structdecl.cmx intf.cmx \
++    idltypes.cmi funct.cmx enumdecl.cmx constdecl.cmx clflags.cmx file.cmi
++fixlabels.cmo : utils.cmi typedef.cmi intf.cmi idltypes.cmi funct.cmi \
++    file.cmi clflags.cmo fixlabels.cmi
++fixlabels.cmx : utils.cmx typedef.cmx intf.cmx idltypes.cmi funct.cmx \
++    file.cmx clflags.cmx fixlabels.cmi
++funct.cmo : variables.cmi utils.cmi typedef.cmi prefix.cmi lexpr.cmi \
++    idltypes.cmi cvtval.cmi cvttyp.cmi funct.cmi
++funct.cmx : variables.cmx utils.cmx typedef.cmx prefix.cmx lexpr.cmx \
++    idltypes.cmi cvtval.cmx cvttyp.cmx funct.cmi
++idlarray.cmo : variables.cmi utils.cmi lexpr.cmi idltypes.cmi cvttyp.cmi \
++    idlarray.cmi
++idlarray.cmx : variables.cmx utils.cmx lexpr.cmx idltypes.cmi cvttyp.cmx \
++    idlarray.cmi
++intf.cmo : variables.cmi utils.cmi prefix.cmi idltypes.cmi funct.cmi \
++    cvtval.cmi cvttyp.cmi intf.cmi
++intf.cmx : variables.cmx utils.cmx prefix.cmx idltypes.cmi funct.cmx \
++    cvtval.cmx cvttyp.cmx intf.cmi
++lexer_midl.cmo : utils.cmi parser_midl.cmi parse_aux.cmi lexer_midl.cmi
++lexer_midl.cmx : utils.cmx parser_midl.cmx parse_aux.cmx lexer_midl.cmi
++lexpr.cmo : utils.cmi prefix.cmi idltypes.cmi config.cmi lexpr.cmi
++lexpr.cmx : utils.cmx prefix.cmx idltypes.cmi config.cmx lexpr.cmi
++linenum.cmo : linenum.cmi
++linenum.cmx : linenum.cmi
++main.cmo : utils.cmi normalize.cmi idltypes.cmi file.cmi clflags.cmo
++main.cmx : utils.cmx normalize.cmx idltypes.cmi file.cmx clflags.cmx
++normalize.cmo : utils.cmi typedef.cmi predef.cmi parse.cmi lexpr.cmi \
++    intf.cmi idltypes.cmi funct.cmi fixlabels.cmi file.cmi constdecl.cmi \
++    normalize.cmi
++normalize.cmx : utils.cmx typedef.cmx predef.cmx parse.cmx lexpr.cmx \
++    intf.cmx idltypes.cmi funct.cmx fixlabels.cmx file.cmx constdecl.cmx \
++    normalize.cmi
++parse.cmo : utils.cmi parser_midl.cmi parse_aux.cmi linenum.cmi \
++    lexer_midl.cmi clflags.cmo parse.cmi
++parse.cmx : utils.cmx parser_midl.cmx parse_aux.cmx linenum.cmx \
++    lexer_midl.cmx clflags.cmx parse.cmi
++parse_aux.cmo : typedef.cmi predef.cmi linenum.cmi intf.cmi idltypes.cmi \
++    funct.cmi file.cmi cvttyp.cmi constdecl.cmi parse_aux.cmi
++parse_aux.cmx : typedef.cmx predef.cmx linenum.cmx intf.cmx idltypes.cmi \
++    funct.cmx file.cmx cvttyp.cmx constdecl.cmx parse_aux.cmi
++parser_midl.cmo : typedef.cmi parse_aux.cmi intf.cmi idltypes.cmi funct.cmi \
++    file.cmi cvttyp.cmi constdecl.cmi parser_midl.cmi
++parser_midl.cmx : typedef.cmx parse_aux.cmx intf.cmx idltypes.cmi funct.cmx \
++    file.cmx cvttyp.cmx constdecl.cmx parser_midl.cmi
++predef.cmo : typedef.cmi intf.cmi idltypes.cmi predef.cmi
++predef.cmx : typedef.cmx intf.cmx idltypes.cmi predef.cmi
++prefix.cmo : utils.cmi idltypes.cmi prefix.cmi
++prefix.cmx : utils.cmx idltypes.cmi prefix.cmi
++struct.cmo : variables.cmi utils.cmi prefix.cmi lexpr.cmi idltypes.cmi \
++    cvttyp.cmi struct.cmi
++struct.cmx : variables.cmx utils.cmx prefix.cmx lexpr.cmx idltypes.cmi \
++    cvttyp.cmx struct.cmi
++structdecl.cmo : variables.cmi utils.cmi struct.cmi prefix.cmi idltypes.cmi \
++    cvtval.cmi cvttyp.cmi structdecl.cmi
++structdecl.cmx : variables.cmx utils.cmx struct.cmx prefix.cmx idltypes.cmi \
++    cvtval.cmx cvttyp.cmx structdecl.cmi
++typedef.cmo : variables.cmi utils.cmi prefix.cmi idltypes.cmi cvtval.cmi \
++    cvttyp.cmi typedef.cmi
++typedef.cmx : variables.cmx utils.cmx prefix.cmx idltypes.cmi cvtval.cmx \
++    cvttyp.cmx typedef.cmi
++union.cmo : variables.cmi utils.cmi idltypes.cmi cvttyp.cmi union.cmi
++union.cmx : variables.cmx utils.cmx idltypes.cmi cvttyp.cmx union.cmi
++uniondecl.cmo : variables.cmi utils.cmi union.cmi prefix.cmi idltypes.cmi \
++    cvtval.cmi cvttyp.cmi uniondecl.cmi
++uniondecl.cmx : variables.cmx utils.cmx union.cmx prefix.cmx idltypes.cmi \
++    cvtval.cmx cvttyp.cmx uniondecl.cmi
++utils.cmo : utils.cmi
++utils.cmx : utils.cmi
++variables.cmo : utils.cmi idltypes.cmi cvttyp.cmi variables.cmi
++variables.cmx : utils.cmx idltypes.cmi cvttyp.cmx variables.cmi
+diff --git a/compiler/Makefile b/compiler/Makefile
+index 8a69411..d756fba 100644
+--- a/compiler/Makefile
++++ b/compiler/Makefile
+@@ -16,7 +16,7 @@ include ../config/Makefile
+ 
+ OBJS=config.cmo utils.cmo clflags.cmo \
+   prefix.cmo lexpr.cmo cvttyp.cmo variables.cmo \
+-  array.cmo struct.cmo enum.cmo union.cmo cvtval.cmo \
++  idlarray.cmo struct.cmo enum.cmo union.cmo cvtval.cmo \
+   structdecl.cmo enumdecl.cmo uniondecl.cmo \
+   typedef.cmo funct.cmo constdecl.cmo intf.cmo \
+   file.cmo predef.cmo \
+diff --git a/compiler/cvtval.ml b/compiler/cvtval.ml
+index 1890637..599aa85 100644
+--- a/compiler/cvtval.ml
++++ b/compiler/cvtval.ml
+@@ -135,17 +135,17 @@ let rec ml_to_c oc onstack pref ty v c =
+   | Type_pointer(Ignore, ty_elt) ->
+       iprintf oc "%s = NULL;\n" c
+   | Type_array({maybe_null=false} as attr, ty_elt) ->
+-      Array.array_ml_to_c ml_to_c oc onstack pref attr ty_elt v c
++      Idlarray.array_ml_to_c ml_to_c oc onstack pref attr ty_elt v c
+   | Type_array({maybe_null=true} as attr, ty_elt) ->
+       option_ml_to_c oc v c
+         (fun v' ->
+-          Array.array_ml_to_c ml_to_c oc onstack pref attr ty_elt v' c)
++          Idlarray.array_ml_to_c ml_to_c oc onstack pref attr ty_elt v' c)
+   | Type_bigarray({bigarray_maybe_null=false} as attr, ty_elt) ->
+-      Array.bigarray_ml_to_c oc pref attr ty_elt v c
++      Idlarray.bigarray_ml_to_c oc pref attr ty_elt v c
+   | Type_bigarray({bigarray_maybe_null=true} as attr, ty_elt) ->
+       option_ml_to_c oc v c
+         (fun v' ->
+-          Array.bigarray_ml_to_c oc pref attr ty_elt v' c)
++          Idlarray.bigarray_ml_to_c oc pref attr ty_elt v' c)
+   | Type_interface(modl, name) ->
+       error (sprintf "Reference to interface %s that is not a pointer" name)
+   | Type_const ty' ->
+@@ -212,15 +212,15 @@ let rec c_to_ml oc pref ty c v =
+   | Type_pointer(Ignore, ty_elt) ->
+       ()
+   | Type_array({maybe_null=false} as attr, ty_elt) ->
+-      Array.array_c_to_ml c_to_ml oc pref attr ty_elt c v
++      Idlarray.array_c_to_ml c_to_ml oc pref attr ty_elt c v
+   | Type_array({maybe_null=true} as attr, ty_elt) ->
+       option_c_to_ml oc c v
+-        (Array.array_c_to_ml c_to_ml oc pref attr ty_elt c)
++        (Idlarray.array_c_to_ml c_to_ml oc pref attr ty_elt c)
+   | Type_bigarray({bigarray_maybe_null=false} as attr, ty_elt) ->
+-      Array.bigarray_c_to_ml oc pref attr ty_elt c v
++      Idlarray.bigarray_c_to_ml oc pref attr ty_elt c v
+   | Type_bigarray({bigarray_maybe_null=true} as attr, ty_elt) ->
+       option_c_to_ml oc c v
+-        (Array.bigarray_c_to_ml oc pref attr ty_elt c)
++        (Idlarray.bigarray_c_to_ml oc pref attr ty_elt c)
+   | Type_interface(modl, name) ->
+       error (sprintf "Reference to interface %s that is not a pointer" name)
+   | Type_const ty' ->
+@@ -234,9 +234,9 @@ let rec allocate_output_space oc pref c ty =
+       let c' = new_c_variable ty_arg in
+       iprintf oc "%s = &%s;\n" c c'
+   | Type_array(attr, ty_arg) ->
+-      Array.array_allocate_output_space oc pref attr ty_arg c
++      Idlarray.array_allocate_output_space oc pref attr ty_arg c
+   | Type_bigarray(attr, ty_arg) ->
+-      Array.bigarray_allocate_output_space oc pref attr ty_arg c
++      Idlarray.bigarray_allocate_output_space oc pref attr ty_arg c
+   | Type_const ty' -> (* does this make sense? *)
+       allocate_output_space oc pref c ty'
+   | _ -> ()
+diff --git a/compiler/array.ml b/compiler/idlarray.ml
+similarity index 100%
+rename from compiler/array.ml
+rename to compiler/idlarray.ml
+diff --git a/compiler/array.mli b/compiler/idlarray.mli
+similarity index 100%
+rename from compiler/array.mli
+rename to compiler/idlarray.mli
+diff --git a/lib/.depend b/lib/.depend
+index 404b8d1..1ab2c5e 100644
+--- a/lib/.depend
++++ b/lib/.depend
+@@ -1,2 +1,3 @@
+-com.cmo: com.cmi 
+-com.cmx: com.cmi 
++com.cmi :
++com.cmo : com.cmi
++com.cmx : com.cmi
+diff --git a/runtime/comerror.c b/runtime/comerror.c
+index aa0df59..3af76b5 100644
+--- a/runtime/comerror.c
++++ b/runtime/comerror.c
+@@ -22,6 +22,7 @@
+ #include <caml/callback.h>
+ #include <caml/fail.h>
+ #include <caml/alloc.h>
++#include <caml/printexc.h>
+ #include "camlidlruntime.h"
+ #include "comstuff.h"
+ 
+@@ -49,8 +50,9 @@ static void camlidl_raise_error(HRESULT errcode, char * who, char * msg)
+ 
+ void camlidl_error(HRESULT errcode, char * who, char * what)
+ {
++#ifdef _WIN32
+   char msg[1024];
+-
++#endif
+   if (what == NULL) {
+ #ifdef _WIN32
+     if (FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM,
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/ocaml-idl.git/commitdiff/76c03e96d41ab59c67c0140599642d8543766466



More information about the pld-cvs-commit mailing list