Project

General

Profile

Revision e8c0f452 src/causality.ml

View differences:

src/causality.ml
229 229

  
230 230
  let get_callee expr =
231 231
    match expr.expr_desc with
232
    | Expr_appl (id, args, _) -> id, expr_list_of_expr args
233
    | _ -> assert false
232
    | Expr_appl (id, args, _) -> Some (id, expr_list_of_expr args)
233
    | _ -> None
234 234

  
235 235
  let get_calls prednode eqs =
236 236
    let deps =
......
248 248
	| Node nd ->
249 249
	  (*Format.eprintf "Computing deps of node %s@.@?" nd.node_id; *)
250 250
	  let accu = add_vertices [nd.node_id] accu in
251
	  let deps = List.map (fun e -> fst (get_callee e)) (get_calls (fun _ -> true) nd.node_eqs) in
251
	  let deps = List.map (fun e -> fst (desome (get_callee e))) (get_calls (fun _ -> true) nd.node_eqs) in
252 252
	   (*Format.eprintf "%a@.@?" (Utils.fprintf_list ~sep:"@." Format.pp_print_string) deps; *)
253 253
	  add_edges [nd.node_id] deps accu
254 254
	| _ -> assert false (* should not happen *)

Also available in: Unified diff