diff options
author | ajreynol <andrew.j.reynolds@gmail.com> | 2017-04-24 10:14:19 -0500 |
---|---|---|
committer | ajreynol <andrew.j.reynolds@gmail.com> | 2017-04-24 10:14:19 -0500 |
commit | bcfe5eed9c79e7bd3c32b5ce8e96a54bcff4099f (patch) | |
tree | 384cf51506c77c99be142aaf60b99f95b02c4bdc /src/parser | |
parent | 1c3a7726cc6748b5363c2569f99175a93ab35f27 (diff) |
Fix parsing selectors for nullary constructors in smtlib 2.6 format.
Diffstat (limited to 'src/parser')
-rw-r--r-- | src/parser/smt2/Smt2.g | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/parser/smt2/Smt2.g b/src/parser/smt2/Smt2.g index 740e35ba4..d73a60ed1 100644 --- a/src/parser/smt2/Smt2.g +++ b/src/parser/smt2/Smt2.g @@ -2538,6 +2538,10 @@ indexedFunctionName[CVC4::Expr& op, CVC4::Kind& kind] | FP_TO_SBV_TOK m=INTEGER_LITERAL { op = MK_CONST(FloatingPointToSBV(AntlrInput::tokenToUnsigned($m))); } | TESTER_TOK term[expr, expr2] { + if( expr.getKind()==kind::APPLY_CONSTRUCTOR ){ + //for nullary constructors, must get the operator + expr = expr.getOperator(); + } if( !expr.getType().isConstructor() ){ PARSER_STATE->parseError("Bad syntax for test (_ is X), X must be a constructor."); } |