summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorClark Barrett <barrett@cs.stanford.edu>2017-06-16 12:46:47 -0700
committerGitHub <noreply@github.com>2017-06-16 12:46:47 -0700
commitb3e1f7ade822d061f276a9477f1ea67fcb1f3a50 (patch)
tree61eaf8e1b0b75832b8a16aca09db83597ad85973
parent38df3307e0503d4b4c69c31e8688da1c03b80bde (diff)
parentbb908d1df39b3064294e5da4813fbfbcb301646b (diff)
Merge pull request #170 from CVC4/fix_2_6_parser3
Parse 'is', 'match' differently for non-DT input
-rw-r--r--src/parser/smt2/Smt2.g4
-rw-r--r--test/regress/regress0/Makefile.am3
-rw-r--r--test/regress/regress0/declare-fun-is-match.smt29
3 files changed, 13 insertions, 3 deletions
diff --git a/src/parser/smt2/Smt2.g b/src/parser/smt2/Smt2.g
index f01893a35..e693f1d57 100644
--- a/src/parser/smt2/Smt2.g
+++ b/src/parser/smt2/Smt2.g
@@ -3026,8 +3026,8 @@ DECLARE_DATATYPES_TOK : { PARSER_STATE->v2_6() }?'declare-datatypes';
DECLARE_CODATATYPES_2_5_TOK : { !PARSER_STATE->v2_6() }?'declare-codatatypes';
DECLARE_CODATATYPES_TOK : { PARSER_STATE->v2_6() }?'declare-codatatypes';
PAR_TOK : { PARSER_STATE->v2_6() }?'par';
-TESTER_TOK : { PARSER_STATE->v2_6() }?'is';
-MATCH_TOK : { PARSER_STATE->v2_6() }?'match';
+TESTER_TOK : { PARSER_STATE->v2_6() && PARSER_STATE->isTheoryEnabled(Smt2::THEORY_DATATYPES) }?'is';
+MATCH_TOK : { PARSER_STATE->v2_6() && PARSER_STATE->isTheoryEnabled(Smt2::THEORY_DATATYPES) }?'match';
GET_MODEL_TOK : 'get-model';
ECHO_TOK : 'echo';
REWRITE_RULE_TOK : 'assert-rewrite';
diff --git a/test/regress/regress0/Makefile.am b/test/regress/regress0/Makefile.am
index 20bafbc77..9a16f68ca 100644
--- a/test/regress/regress0/Makefile.am
+++ b/test/regress/regress0/Makefile.am
@@ -68,7 +68,8 @@ SMT2_TESTS = \
hung10_itesdk_output2.smt2 \
hung10_itesdk_output1.smt2 \
hung13sdk_output2.smt2 \
- declare-funs.smt2
+ declare-funs.smt2 \
+ declare-fun-is-match.smt2
# Regression tests for PL inputs
CVC_TESTS = \
diff --git a/test/regress/regress0/declare-fun-is-match.smt2 b/test/regress/regress0/declare-fun-is-match.smt2
new file mode 100644
index 000000000..d9387208f
--- /dev/null
+++ b/test/regress/regress0/declare-fun-is-match.smt2
@@ -0,0 +1,9 @@
+; EXPECT: sat
+(set-info :smt-lib-version 2.6)
+(set-logic UFIDL)
+(set-info :status sat)
+(declare-fun match (Int Int) Int)
+(declare-fun is (Int Int) Int)
+(assert (= match is))
+(check-sat)
+(exit)
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback