summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPierre Weis <Pierre.Weis@inria.fr>2009-12-23 18:46:52 +0000
committerPierre Weis <Pierre.Weis@inria.fr>2009-12-23 18:46:52 +0000
commited43cd4bd25a6465ec5bd0a67be184952cc37bf1 (patch)
treef36b323eb49d7180ef56c1daa2b699e41e2276e9
parent57cc3000e652f833de7c3dd44bbe88900a8b3989 (diff)
downloadocaml-ed43cd4bd25a6465ec5bd0a67be184952cc37bf1.tar.gz
Bootstrap succeded :)
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/dothat@9488 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
-rwxr-xr-xboot/ocamlcbin1072883 -> 1071898 bytes
-rwxr-xr-xboot/ocamldepbin303812 -> 303259 bytes
-rwxr-xr-xboot/ocamllexbin165419 -> 165419 bytes
-rw-r--r--bytecomp/matching.ml2
-rw-r--r--bytecomp/symtable.ml2
-rw-r--r--bytecomp/translcore.ml2
-rw-r--r--bytecomp/typeopt.ml4
-rw-r--r--tools/depend.ml30
8 files changed, 28 insertions, 12 deletions
diff --git a/boot/ocamlc b/boot/ocamlc
index 56a70e7465..cad835a102 100755
--- a/boot/ocamlc
+++ b/boot/ocamlc
Binary files differ
diff --git a/boot/ocamldep b/boot/ocamldep
index de4bc7449a..ce42b6f960 100755
--- a/boot/ocamldep
+++ b/boot/ocamldep
Binary files differ
diff --git a/boot/ocamllex b/boot/ocamllex
index 4821eb9120..4a951f701f 100755
--- a/boot/ocamllex
+++ b/boot/ocamllex
Binary files differ
diff --git a/bytecomp/matching.ml b/bytecomp/matching.ml
index b20022d7b5..3e6b1a0235 100644
--- a/bytecomp/matching.ml
+++ b/bytecomp/matching.ml
@@ -2550,7 +2550,7 @@ let partial_function loc () =
let line = pos.Lexing.pos_lnum in
let char = pos.Lexing.pos_cnum - pos.Lexing.pos_bol in
Lprim(Praise, [Lprim(Pmakeblock(0, Immutable),
- [transl_path Predef.path_match_failure;
+ [transl_path Builtin.path_match_failure;
Lconst(Const_block(0,
[Const_base(Const_string fname);
Const_base(Const_int line);
diff --git a/bytecomp/symtable.ml b/bytecomp/symtable.ml
index 1538451634..0430eadace 100644
--- a/bytecomp/symtable.ml
+++ b/bytecomp/symtable.ml
@@ -144,7 +144,7 @@ let init () =
Array.iter
(fun name ->
let id =
- try List.assoc name Predef.builtin_values
+ try List.assoc name Builtin.builtin_values
with Not_found -> fatal_error "Symtable.init" in
let c = slot_for_setglobal id in
let cst = Const_block(0, [Const_base(Const_string name)]) in
diff --git a/bytecomp/translcore.ml b/bytecomp/translcore.ml
index 31b1e8093b..66d2b6cb53 100644
--- a/bytecomp/translcore.ml
+++ b/bytecomp/translcore.ml
@@ -540,7 +540,7 @@ let assert_failed loc =
let line = pos.Lexing.pos_lnum in
let char = pos.Lexing.pos_cnum - pos.Lexing.pos_bol in
Lprim(Praise, [Lprim(Pmakeblock(0, Immutable),
- [transl_path Predef.path_assert_failure;
+ [transl_path Builtin.path_assert_failure;
Lconst(Const_block(0,
[Const_base(Const_string fname);
Const_base(Const_int line);
diff --git a/bytecomp/typeopt.ml b/bytecomp/typeopt.ml
index f905cc26d9..7fcf73a044 100644
--- a/bytecomp/typeopt.ml
+++ b/bytecomp/typeopt.ml
@@ -37,7 +37,7 @@ let maybe_pointer exp =
not (Path.same p Predef.path_int) &&
not (Path.same p Predef.path_char) &&
begin try
- match Env.find_type p exp.exp_env with
+ match Env.find_type_declaration p exp.exp_env with
{type_kind = Type_variant []} -> true (* type exn *)
| {type_kind = Type_variant cstrs} ->
List.exists (fun (name, args) -> args <> []) cstrs
@@ -67,7 +67,7 @@ let array_element_kind env ty =
Paddrarray
else begin
try
- match Env.find_type p env with
+ match Env.find_type_declaration p env with
{type_kind = Type_abstract} ->
Pgenarray
| {type_kind = Type_variant cstrs}
diff --git a/tools/depend.ml b/tools/depend.ml
index 4d24070adb..0aaded2846 100644
--- a/tools/depend.ml
+++ b/tools/depend.ml
@@ -15,6 +15,7 @@
open Format
open Location
open Longident
+open Reftypes
open Parsetree
module StringSet = Set.Make(struct type t = string let compare = compare end)
@@ -33,9 +34,21 @@ let rec addmodule bv lid =
let add bv lid =
match lid with
- Ldot(l, s) -> addmodule bv l
+ Ldot (l, _s) -> addmodule bv l
| _ -> ()
+let add_lref bv lref =
+ match lref with
+ | Reftypes.Plabel _lid -> ()
+ | Reftypes.Plabel_ty (lid, _s) -> add bv lid
+;;
+
+let add_cref bv cref =
+ match cref with
+ | Reftypes.Pconstr _lid -> ()
+ | Reftypes.Pconstr_ty (lid, _s) -> add bv lid
+;;
+
let rec add_type bv ty =
match ty.ptyp_desc with
Ptyp_any -> ()
@@ -105,9 +118,10 @@ let rec add_pattern bv pat =
| Ppat_alias(p, _) -> add_pattern bv p
| Ppat_constant _ -> ()
| Ppat_tuple pl -> List.iter (add_pattern bv) pl
- | Ppat_construct(c, op, _) -> add bv c; add_opt add_pattern bv op
+ | Ppat_construct(cref, op, _) ->
+ add_cref bv cref; add_opt add_pattern bv op
| Ppat_record(pl, _) ->
- List.iter (fun (lbl, p) -> add bv lbl; add_pattern bv p) pl
+ List.iter (fun (lref, p) -> add_lref bv lref; add_pattern bv p) pl
| Ppat_array pl -> List.iter (add_pattern bv) pl
| Ppat_or(p1, p2) -> add_pattern bv p1; add_pattern bv p2
| Ppat_constraint(p, ty) -> add_pattern bv p; add_type bv ty
@@ -127,13 +141,15 @@ let rec add_expr bv exp =
| Pexp_match(e, pel) -> add_expr bv e; add_pat_expr_list bv pel
| Pexp_try(e, pel) -> add_expr bv e; add_pat_expr_list bv pel
| Pexp_tuple el -> List.iter (add_expr bv) el
- | Pexp_construct(c, opte, _) -> add bv c; add_opt add_expr bv opte
+ | Pexp_construct(cref, opte, _) ->
+ add_cref bv cref; add_opt add_expr bv opte
| Pexp_variant(_, opte) -> add_opt add_expr bv opte
| Pexp_record(lblel, opte) ->
- List.iter (fun (lbl, e) -> add bv lbl; add_expr bv e) lblel;
+ List.iter (fun (lref, e) -> add_lref bv lref; add_expr bv e) lblel;
add_opt add_expr bv opte
- | Pexp_field(e, fld) -> add_expr bv e; add bv fld
- | Pexp_setfield(e1, fld, e2) -> add_expr bv e1; add bv fld; add_expr bv e2
+ | Pexp_field(e, lref) -> add_expr bv e; add_lref bv lref
+ | Pexp_setfield(e1, lref, e2) ->
+ add_expr bv e1; add_lref bv lref; add_expr bv e2
| Pexp_array el -> List.iter (add_expr bv) el
| Pexp_ifthenelse(e1, e2, opte3) ->
add_expr bv e1; add_expr bv e2; add_opt add_expr bv opte3