@@ -39,6 +39,7 @@ open CHTraceResult
3939
4040(* xprlib *)
4141open Xprt
42+ open XprTypes
4243open XprToPretty
4344
4445(* bchlib *)
@@ -64,8 +65,8 @@ let memory_base_to_string (b: memory_base_t): string =
6465 | BAllocatedStackFrame -> " allocated-stack"
6566 | BGlobal -> " global"
6667 | BaseVar v -> " var-" ^ v#getName#getBaseName
67- | BaseArray (v , _ ) -> " array-" ^ v#getName#getBaseName
68- | BaseStruct (v , _ ) -> " struct-" ^ v#getName#getBaseName
68+ | BaseArray (x , _ ) -> " array-" ^ (x2s x)
69+ | BaseStruct (x , _ ) -> " struct-" ^ (x2s x)
6970 | BaseUnknown s -> " unknown-" ^ s
7071
7172
@@ -322,11 +323,11 @@ object (self:'a)
322323
323324 method get_base = base
324325
325- method get_name =
326+ method get_name: string =
326327 match base with
327328 | BaseVar v -> v#getName#getBaseName
328- | BaseArray (v , _ ) -> v#getName#getBaseName
329- | BaseStruct (v , _ ) -> v#getName#getBaseName
329+ | BaseArray (x , _ ) -> (x2s x)
330+ | BaseStruct (x , _ ) -> (x2s x)
330331 | BLocalStackFrame -> " var"
331332 | BRealignedStackFrame -> " varr"
332333 | BAllocatedStackFrame -> " vara"
@@ -343,25 +344,25 @@ object (self:'a)
343344 match base with
344345 | BaseVar v -> Ok v
345346 | _ ->
346- Error [
347- " get_external_base: not an external base: "
348- ^ (memory_base_to_string base)]
347+ Error [__FILE__ ^ " : " ^ (string_of_int __LINE__) ^ " : "
348+ ^ " Not an external base: "
349+ ^ (memory_base_to_string base)]
349350
350- method get_array_base: (variable_t * btype_t) traceresult =
351+ method get_array_base: (xpr_t * btype_t) traceresult =
351352 match base with
352- | BaseArray (v , t ) -> Ok (v , t)
353+ | BaseArray (x , t ) -> Ok (x , t)
353354 | _ ->
354- Error [
355- " get_array_base: not an array base: "
356- ^ (memory_base_to_string base)]
355+ Error [__FILE__ ^ " : " ^ (string_of_int __LINE__) ^ " : "
356+ ^ " Not an array base: "
357+ ^ (memory_base_to_string base)]
357358
358- method get_struct_base: (variable_t * btype_t) traceresult =
359+ method get_struct_base: (xpr_t * btype_t) traceresult =
359360 match base with
360- | BaseStruct (v , t ) -> Ok (v , t)
361+ | BaseStruct (x , t ) -> Ok (x , t)
361362 | _ ->
362- Error [
363- " get_struct_base: not a struct base: "
364- ^ (memory_base_to_string base)]
363+ Error [__FILE__ ^ " : " ^ (string_of_int __LINE__) ^ " : "
364+ ^ " Not a struct base: "
365+ ^ (memory_base_to_string base)]
365366
366367 method has_external_base =
367368 match base with BaseVar _ -> true | _ -> false
@@ -384,7 +385,7 @@ object (self:'a)
384385 method is_unknown_reference =
385386 match base with BaseUnknown _ -> true | _ -> false
386387
387- method toPretty = LBLOCK [ memory_base_to_pretty base ]
388+ method toPretty = LBLOCK [memory_base_to_pretty base]
388389
389390end
390391
@@ -419,20 +420,20 @@ object (self)
419420
420421 method mk_basevar_reference v = self#mk_reference (BaseVar v)
421422
422- method mk_base_array_reference (v : variable_t ) (t : btype_t ) =
423- self#mk_reference (BaseArray (v , t))
423+ method mk_base_array_reference (x : xpr_t ) (t : btype_t ) =
424+ self#mk_reference (BaseArray (x , t))
424425
425- method mk_base_struct_reference (v : variable_t ) (t : btype_t ) =
426- self#mk_reference (BaseStruct (v , t))
426+ method mk_base_struct_reference (x : xpr_t ) (t : btype_t ) =
427+ self#mk_reference (BaseStruct (x , t))
427428
428429 method mk_unknown_reference s = self#mk_reference (BaseUnknown s)
429430
430431 method get_memory_reference (index : int ): memory_reference_int traceresult =
431432 if H. mem table index then
432433 Ok (H. find table index)
433434 else
434- Error [
435- " get_memory_reference_int: index not found: " ^ (string_of_int index)]
435+ Error [__FILE__ ^ " : " ^ (string_of_int __LINE__) ^ " : "
436+ ^ " Index not found: " ^ (string_of_int index)]
436437
437438 method get_memory_reference_type (index : int ): btype_t option =
438439 tfold_default
@@ -443,13 +444,13 @@ object (self)
443444 method is_unknown_reference (index : int ): bool traceresult =
444445 let memref_r = self#get_memory_reference index in
445446 tmap
446- ~msg: " is_unknown_reference "
447+ ~msg: (__FILE__ ^ " : " ^ (string_of_int __LINE__))
447448 (fun memref -> memref#is_unknown_reference) memref_r
448449
449450 method is_global_reference (index : int ): bool traceresult =
450451 let memref_r = self#get_memory_reference index in
451452 tmap
452- ~msg: " is_global_reference "
453+ ~msg: (__FILE__ ^ " : " ^ (string_of_int __LINE__))
453454 (fun memref -> memref#is_global_reference) memref_r
454455
455456 method initialize =
0 commit comments