ocaml
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

restore missing duplicate tree warning

+12 -7
+12 -7
lib/frontend/Forest.ml
··· 112 112 113 113 114 114 let plant_forest (trees : raw_forest) : forest = 115 + let add_tree addr tree trees = 116 + if M.mem addr trees then 117 + begin 118 + Reporter.emitf Duplicate_tree "skipping duplicate tree at address `%s`" addr; 119 + trees 120 + end 121 + else 122 + M.add addr tree trees 123 + in 124 + 115 125 let unexpanded_trees = 116 126 let alg acc (tree : Code.tree) = 117 127 match tree.addr with 118 - | Some addr -> 119 - begin 120 - if M.mem addr acc then 121 - Reporter.fatalf Duplicate_tree "duplicate tree at address `%s`" addr; 122 - M.add addr tree acc 123 - end 128 + | Some addr -> add_tree addr tree acc 124 129 | None -> acc 125 130 in 126 131 Seq.fold_left alg M.empty trees ··· 138 143 let add trees tree = 139 144 match Sem.(tree.fm.addr) with 140 145 | None -> trees 141 - | Some addr -> M.add addr tree trees 146 + | Some addr -> add_tree addr tree trees 142 147 in 143 148 units, List.fold_left add trees @@ tree :: emitted_trees 144 149 in