diff options
author | Alex Auvolat <alex.auvolat@ansys.com> | 2014-07-22 09:04:13 +0200 |
---|---|---|
committer | Alex Auvolat <alex.auvolat@ansys.com> | 2014-07-22 09:04:13 +0200 |
commit | 7e1cf88f181aa0596361b5b5d784f8e4b9b19266 (patch) | |
tree | b6a112c49083605aaea837cb7b4bcf51a9a4b89c /abstract/nonrelational.ml | |
parent | bebab48e94ad156341f12fe90224e67e98477ca8 (diff) | |
download | scade-analyzer-7e1cf88f181aa0596361b5b5d784f8e4b9b19266.tar.gz scade-analyzer-7e1cf88f181aa0596361b5b5d784f8e4b9b19266.zip |
Add support for octagons.
Diffstat (limited to 'abstract/nonrelational.ml')
-rw-r--r-- | abstract/nonrelational.ml | 11 |
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 |