diff options
author | Morgan Deters <mdeters@gmail.com> | 2011-10-21 04:44:14 +0000 |
---|---|---|
committer | Morgan Deters <mdeters@gmail.com> | 2011-10-21 04:44:14 +0000 |
commit | 9039185001b789eadd8b20149455fe778a80fb69 (patch) | |
tree | e8854bf2c2702604a069b12df176592f9336c9e2 /src/parser | |
parent | da1f0e9e8479741487a59ad68198262c3730081e (diff) |
some printing and parser fixes for problems recently uncovered
Diffstat (limited to 'src/parser')
-rw-r--r-- | src/parser/smt2/Smt2.g | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/parser/smt2/Smt2.g b/src/parser/smt2/Smt2.g index f9a2cccf2..a1a98ac9b 100644 --- a/src/parser/smt2/Smt2.g +++ b/src/parser/smt2/Smt2.g @@ -380,6 +380,7 @@ extendedCommand[CVC4::Command*& cmd] symbolicExpr[CVC4::SExpr& sexpr] @declarations { std::vector<SExpr> children; + CVC4::Kind k; } : INTEGER_LITERAL { sexpr = SExpr(AntlrInput::tokenText($INTEGER_LITERAL)); } @@ -389,6 +390,11 @@ symbolicExpr[CVC4::SExpr& sexpr] { sexpr = SExpr(AntlrInput::tokenText($STRING_LITERAL)); } | SYMBOL { sexpr = SExpr(AntlrInput::tokenText($SYMBOL)); } + | builtinOp[k] + { std::stringstream ss; + ss << Expr::setlanguage(CVC4::language::output::LANG_SMTLIB_V2) << EXPR_MANAGER->mkConst(k); + sexpr = SExpr(ss.str()); + } | KEYWORD { sexpr = SExpr(AntlrInput::tokenText($KEYWORD)); } | LPAREN_TOK @@ -893,7 +899,7 @@ LESS_THAN_EQUAL_TOK : '<='; MINUS_TOK : '-'; NOT_TOK : 'not'; OR_TOK : 'or'; -PERCENT_TOK : '%'; +// PERCENT_TOK : '%'; PLUS_TOK : '+'; POUND_TOK : '#'; SELECT_TOK : 'select'; |