summaryrefslogtreecommitdiff
path: root/frontend/ast_util.ml
diff options
context:
space:
mode:
authorAlex Auvolat <alex.auvolat@ansys.com>2014-06-19 13:47:00 +0200
committerAlex Auvolat <alex.auvolat@ansys.com>2014-06-19 13:47:00 +0200
commitf4200a0aa90e2641ce1b0b1c54d00d9d4dd3b73e (patch)
tree53b82c4d758d11936f0ee0d106ea0aaf75d48f61 /frontend/ast_util.ml
parent8286c7c23a47c166aa87337a3146cdf3b278b144 (diff)
downloadscade-analyzer-f4200a0aa90e2641ce1b0b1c54d00d9d4dd3b73e.tar.gz
scade-analyzer-f4200a0aa90e2641ce1b0b1c54d00d9d4dd3b73e.zip
Did most of the boring stuff. Now, work on the abstract domain.
Diffstat (limited to 'frontend/ast_util.ml')
-rw-r--r--frontend/ast_util.ml2
1 files changed, 2 insertions, 0 deletions
diff --git a/frontend/ast_util.ml b/frontend/ast_util.ml
index a7953ad..b3393a7 100644
--- a/frontend/ast_util.ml
+++ b/frontend/ast_util.ml
@@ -55,6 +55,7 @@ let rec extract_instances p e = match fst e with
let (node, _) = find_node_decl p f in
let args_x = List.map2 (fun id arg -> id, arg) node.args args in
(f, id, node.body, args_x)::more
+ | AST_tuple x -> List.flatten (List.map (extract_instances p) x)
(* Utility : find pre declarations in an expression *)
@@ -70,6 +71,7 @@ let rec extract_pre e = match fst e with
extract_pre e1 @ extract_pre e2 @ extract_pre e3
| AST_instance((f, _), args, id) ->
List.flatten (List.map extract_pre args)
+ | AST_tuple x -> List.flatten (List.map extract_pre x)
| AST_pre(e', n) ->
(n, e')::(extract_pre e')