summaryrefslogtreecommitdiff
path: root/abstract/nonrelational.ml
diff options
context:
space:
mode:
authorAlex Auvolat <alex.auvolat@ansys.com>2014-07-22 09:04:13 +0200
committerAlex Auvolat <alex.auvolat@ansys.com>2014-07-22 09:04:13 +0200
commit7e1cf88f181aa0596361b5b5d784f8e4b9b19266 (patch)
treeb6a112c49083605aaea837cb7b4bcf51a9a4b89c /abstract/nonrelational.ml
parentbebab48e94ad156341f12fe90224e67e98477ca8 (diff)
downloadscade-analyzer-7e1cf88f181aa0596361b5b5d784f8e4b9b19266.tar.gz
scade-analyzer-7e1cf88f181aa0596361b5b5d784f8e4b9b19266.zip
Add support for octagons.
Diffstat (limited to 'abstract/nonrelational.ml')
-rw-r--r--abstract/nonrelational.ml11
1 files changed, 8 insertions, 3 deletions
diff --git a/abstract/nonrelational.ml b/abstract/nonrelational.ml
index ed029da..dbc17c9 100644
--- a/abstract/nonrelational.ml
+++ b/abstract/nonrelational.ml
@@ -33,9 +33,14 @@ module ND (V : VALUE_DOMAIN) : NUMERICAL_ENVIRONMENT_DOMAIN = struct
| NIdent id -> get_var env id
| NIntConst i -> V.const i
| NRealConst f -> V.const (int_of_float f) (* TODO floats *)
- | NUnary (AST_UPLUS, e, _) -> eval env e
- | NUnary (AST_UMINUS, e, _) -> V.neg (eval env e)
- | NBinary (op, e1, e2, _) ->
+ | NUnary (AST_UPLUS, e, isreal) ->
+ if isreal then not_implemented "real type for nonrelationnal domain";
+ eval env e
+ | NUnary (AST_UMINUS, e, isreal) ->
+ if isreal then not_implemented "real type for nonrelationnal domain";
+ V.neg (eval env e)
+ | NBinary (op, e1, e2, isreal) ->
+ if isreal then not_implemented "real type for nonrelationnal domain";
let f = match op with
| AST_PLUS -> V.add
| AST_MINUS -> V.sub