summaryrefslogtreecommitdiff
path: root/src/parser/smt2
diff options
context:
space:
mode:
authorMorgan Deters <mdeters@cs.nyu.edu>2013-08-19 18:15:21 -0400
committerMorgan Deters <mdeters@cs.nyu.edu>2013-09-09 18:27:41 -0400
commit28ec8ce392a815c47689ecd86b5b91f9a58104e5 (patch)
treea48183cf1ce4f28653f994e15b7191c3f4005165 /src/parser/smt2
parente5044d89c715ac6c0d41a731b58a9c672d2d524e (diff)
Add support for check-sat with argument.
Diffstat (limited to 'src/parser/smt2')
-rw-r--r--src/parser/smt2/Smt2.g8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/parser/smt2/Smt2.g b/src/parser/smt2/Smt2.g
index 23f0fb9fa..a6a2aa58c 100644
--- a/src/parser/smt2/Smt2.g
+++ b/src/parser/smt2/Smt2.g
@@ -344,7 +344,13 @@ command returns [CVC4::Command* cmd = NULL]
{ cmd = new AssertCommand(expr); }
| /* checksat */
CHECKSAT_TOK { PARSER_STATE->checkThatLogicIsSet(); }
- { cmd = new CheckSatCommand(MK_CONST(bool(true))); }
+ ( term[expr, expr2]
+ { if(PARSER_STATE->strictModeEnabled()) {
+ PARSER_STATE->parseError("Extended commands (such as check-sat with an argument) are not permitted while operating in strict compliance mode.");
+ }
+ }
+ | { expr = MK_CONST(bool(true)); } )
+ { cmd = new CheckSatCommand(expr); }
| /* get-assertions */
GET_ASSERTIONS_TOK { PARSER_STATE->checkThatLogicIsSet(); }
{ cmd = new GetAssertionsCommand(); }
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback