Modification de Ctype.substitute (un argument en moins) et
Types.Tconstr. git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1246 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02master
parent
6c452fe5f5
commit
137d8117c6
|
@ -129,7 +129,7 @@ and find_label lbl env ty path tydesc pos = function
|
||||||
| (name, mut, ty_arg) :: rem ->
|
| (name, mut, ty_arg) :: rem ->
|
||||||
if name = lbl then begin
|
if name = lbl then begin
|
||||||
let descr =
|
let descr =
|
||||||
{ lbl_res = Ctype.newty(Tconstr(path, tydesc.type_params, ref []));
|
{ lbl_res = Ctype.newty(Tconstr(path, tydesc.type_params, ref Mnil));
|
||||||
lbl_arg = ty_arg; lbl_mut = mut; lbl_pos = pos;
|
lbl_arg = ty_arg; lbl_mut = mut; lbl_pos = pos;
|
||||||
lbl_all = [||]; lbl_repres = Record_regular } in
|
lbl_all = [||]; lbl_repres = Record_regular } in
|
||||||
let (ty_arg, ty_res) = Ctype.instance_label descr in
|
let (ty_arg, ty_res) = Ctype.instance_label descr in
|
||||||
|
|
|
@ -193,7 +193,7 @@ let print_value max_depth obj ty env =
|
||||||
print_string "<abstr>"
|
print_string "<abstr>"
|
||||||
| {type_kind = Type_abstract; type_manifest = Some body} ->
|
| {type_kind = Type_abstract; type_manifest = Some body} ->
|
||||||
print_val prio depth obj
|
print_val prio depth obj
|
||||||
(Ctype.substitute [] decl.type_params ty_list body)
|
(Ctype.substitute decl.type_params ty_list body)
|
||||||
| {type_kind = Type_variant constr_list} ->
|
| {type_kind = Type_variant constr_list} ->
|
||||||
let tag =
|
let tag =
|
||||||
if Debugcom.remote_value_is_int obj then
|
if Debugcom.remote_value_is_int obj then
|
||||||
|
@ -204,7 +204,7 @@ let print_value max_depth obj ty env =
|
||||||
let (constr_name, constr_args) =
|
let (constr_name, constr_args) =
|
||||||
find_constr tag 0 0 constr_list in
|
find_constr tag 0 0 constr_list in
|
||||||
let ty_args =
|
let ty_args =
|
||||||
List.map (Ctype.substitute [] decl.type_params ty_list)
|
List.map (Ctype.substitute decl.type_params ty_list)
|
||||||
constr_args in
|
constr_args in
|
||||||
begin match ty_args with
|
begin match ty_args with
|
||||||
[] ->
|
[] ->
|
||||||
|
@ -245,7 +245,7 @@ let print_value max_depth obj ty env =
|
||||||
print_string lbl_name;
|
print_string lbl_name;
|
||||||
print_string "="; print_cut();
|
print_string "="; print_cut();
|
||||||
let ty_arg =
|
let ty_arg =
|
||||||
Ctype.substitute [] decl.type_params ty_list lbl_arg in
|
Ctype.substitute decl.type_params ty_list lbl_arg in
|
||||||
cautious
|
cautious
|
||||||
(print_val 0 (depth - 1) (Debugcom.get_field obj pos))
|
(print_val 0 (depth - 1) (Debugcom.get_field obj pos))
|
||||||
ty_arg;
|
ty_arg;
|
||||||
|
|
Loading…
Reference in New Issue