summaryrefslogtreecommitdiffstats
path: root/debugger/eval.ml
diff options
context:
space:
mode:
Diffstat (limited to 'debugger/eval.ml')
-rw-r--r--debugger/eval.ml16
1 files changed, 8 insertions, 8 deletions
diff --git a/debugger/eval.ml b/debugger/eval.ml
index d12dfa803..abec4291a 100644
--- a/debugger/eval.ml
+++ b/debugger/eval.ml
@@ -13,7 +13,6 @@
(* $Id$ *)
-open Debugger_config
open Misc
open Path
open Instruct
@@ -42,7 +41,9 @@ let abstract_type =
let rec path event = function
Pident id ->
if Ident.global id then
- Debugcom.Remote_value.global (Symtable.get_global_position id)
+ try
+ Debugcom.Remote_value.global (Symtable.get_global_position id)
+ with Symtable.Error _ -> raise(Error(Unbound_identifier id))
else
begin match event with
Some ev ->
@@ -88,8 +89,8 @@ let rec expression event env = function
end
| E_result ->
begin match event with
- Some {ev_kind = Event_after ty} when !Frames.current_frame = 0 ->
- (Debugcom.Remote_value.accu(), ty)
+ Some {ev_kind = Event_after ty; ev_typsubst = subst} when !Frames.current_frame = 0 ->
+ (Debugcom.Remote_value.accu(), Subst.type_expr subst ty)
| _ ->
raise(Error(No_result))
end
@@ -178,15 +179,14 @@ let report_error ppf = function
| Tuple_index(ty, len, pos) ->
Printtyp.reset_and_mark_loops ty;
fprintf ppf
- "@[Cannot extract field number %i from a %i-components \
- tuple of type@ %a@]@."
+ "@[Cannot extract field number %i from a %i-tuple of type@ %a@]@."
pos len Printtyp.type_expr ty
| Array_index(len, pos) ->
fprintf ppf
- "@[Cannot extract element number %i from array of length %i@]@." pos len
+ "@[Cannot extract element number %i from an array of length %i@]@." pos len
| List_index(len, pos) ->
fprintf ppf
- "@[Cannot extract element number %i from list of length %i@]@." pos len
+ "@[Cannot extract element number %i from a list of length %i@]@." pos len
| String_index(s, len, pos) ->
fprintf ppf
"@[Cannot extract character number %i@ \