summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMorgan Deters <mdeters@cs.nyu.edu>2014-06-18 12:02:37 -0400
committerlianah <lianahady@gmail.com>2014-06-19 18:24:40 -0400
commit0720ea721663177c3919eb2415dccdcc018f5c73 (patch)
treee8c112b78e852b8fc7cc34e83cf89fa2d58b1a6b
parent7bff213cbad334474b4db582d9965f7ef5ba9946 (diff)
Better error for invalid concrete syntax of sorts with too many parens, like (Int). Thanks to Dan Liew for the report.
-rw-r--r--src/parser/smt2/Smt2.g4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/parser/smt2/Smt2.g b/src/parser/smt2/Smt2.g
index 63179cf42..8590229a2 100644
--- a/src/parser/smt2/Smt2.g
+++ b/src/parser/smt2/Smt2.g
@@ -1483,7 +1483,9 @@ sortSymbol[CVC4::Type& t, CVC4::parser::DeclarationCheck check]
}
| LPAREN_TOK symbol[name,CHECK_NONE,SYM_SORT] sortList[args] RPAREN_TOK
{
- if(name == "Array" &&
+ if(args.empty()) {
+ PARSER_STATE->parseError("Extra parentheses around sort name not permitted in SMT-LIB");
+ } else if(name == "Array" &&
PARSER_STATE->isTheoryEnabled(Smt2::THEORY_ARRAYS) ) {
if(args.size() != 2) {
PARSER_STATE->parseError("Illegal array type.");
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback