let rec add_stmt_nodes pdg nodes s =
  let s_nodes = find_simple_stmt_nodes pdg s in
  let nodes = s_nodes @ nodes in
  let add_block_stmts_nodes node_list blk =
    List.fold_left (add_stmt_nodes pdg) node_list blk.bstmts
  in
    match s.skind with
      | Switch (_,blk,_,_) | Loop (_, blk, _, _, _) | Block blk ->
          M.debug 2 "   select_stmt_computation on composed stmt %d@." s.sid;
          add_block_stmts_nodes nodes blk
      | UnspecifiedSequence seq ->
          M.debug 2 "   select_stmt_computation on composed stmt %d@." s.sid;
          add_block_stmts_nodes nodes (Cil.block_from_unspecified_sequence seq)
      | If (_,bthen,belse,_) ->
          let nodes = add_block_stmts_nodes nodes bthen in
            add_block_stmts_nodes nodes belse
      | _ -> nodes