diff --git a/src/plugins/region/Region.mli b/src/plugins/region/Region.mli index 0d60818d1b331aca128c6b72cfd0384948156dfe..5c778af4a257a97892e6d66fc6cbeb127c1673bf 100644 --- a/src/plugins/region/Region.mli +++ b/src/plugins/region/Region.mli @@ -137,5 +137,5 @@ val field : map -> node -> fieldinfo -> node (** Unormalized. @raises Not_found *) val index : map -> node -> typ -> node -(** Unormalized. *) +(** Normalized list of leaf nodes. *) val footprint : map -> node -> node list diff --git a/src/plugins/region/memory.ml b/src/plugins/region/memory.ml index fb6df27c6e54b553b751ad0a1d2fd98b301eb233..4a5931c1c512a868663fbfc5c548ae82be276458 100644 --- a/src/plugins/region/memory.ml +++ b/src/plugins/region/memory.ml @@ -468,17 +468,17 @@ let field (m: map) (r: node) (fd: fieldinfo) : node = let footprint (m: map) (r: node) : node list = try - let visited = ref SNode.empty (* set of visited&normalized nodes *) in - let leafs = ref [] (* lsit of leafs *) in + let visited = ref SNode.empty (* set of visited & normalized nodes *) in + let leaves = ref [] (* returned leaves *) in let rec visit (r: node) : unit = let n = node m r in (* normalized node *) if SNode.mem n !visited then () else - let _ = visited := SNode.add n !visited in + let () = visited := SNode.add n !visited in let rg = (* raises Not_found *) Ufind.get m.store n in match rg.clayout with | Compound (_, _, range) -> Ranges.iter visit range - | Blob | Cell (_,_) -> leafs := n :: !leafs - in visit r ; !leafs + | Blob | Cell (_,_) -> leaves := n :: !leaves + in visit r ; !leaves with Not_found -> [] let index (m : map) (r: node) (ty:typ) : node =