summaryrefslogtreecommitdiff
path: root/src/parser/smt2/Smt2.g
diff options
context:
space:
mode:
authorajreynol <andrew.j.reynolds@gmail.com>2017-04-24 10:14:19 -0500
committerajreynol <andrew.j.reynolds@gmail.com>2017-04-24 10:14:19 -0500
commitbcfe5eed9c79e7bd3c32b5ce8e96a54bcff4099f (patch)
tree384cf51506c77c99be142aaf60b99f95b02c4bdc /src/parser/smt2/Smt2.g
parent1c3a7726cc6748b5363c2569f99175a93ab35f27 (diff)
Fix parsing selectors for nullary constructors in smtlib 2.6 format.
Diffstat (limited to 'src/parser/smt2/Smt2.g')
-rw-r--r--src/parser/smt2/Smt2.g4
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.");
}
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback