anchor.diff:  type parsing_data_elt =
     | P_begin_module of lident  //begin_module
     | P_open of bool * lident  //record_open
  -  | P_open_module_or_namespace of (open_kind * lid)  //record_open_module_or_namespace
  +  | P_implicit_open_module_or_namespace of (open_kind * lid)  //record_open_module_or_namespace
     | P_dep of bool * lident  //add_dep_on_module
     | P_alias of ident * lident  //record_module_alias
     | P_lid of lident  //record_lid
  
positive.code:        in
  
         let auto_open = hard_coded_dependencies filename |> List.map (fun (lid, k) ->
           P_open_module_or_namespace (k, lid))
         in
  
         let working_map = smap_copy original_map in
  
negative.code:   ) filenames;
    map
  
  let string_of_lid (l: lident) (last: bool) =
    let suffix = if last then [ (string_of_id (ident_of_lid l)) ] else [ ] in
    let names = List.map (fun x -> (string_of_id x)) (ns_of_lid l) @ suffix in
  