Skip to content

Add an option to reject/log Smtlib inputs with illegal commands#630

Draft
daniel-raffler wants to merge 9 commits intomasterfrom
exhaustiveTokenizer
Draft

Add an option to reject/log Smtlib inputs with illegal commands#630
daniel-raffler wants to merge 9 commits intomasterfrom
exhaustiveTokenizer

Conversation

@daniel-raffler
Copy link
Copy Markdown
Contributor

Hello,

this PR extends the Tokenizer to recognize all commands from the SMTLIB standard. We also add a configuration option parser.illegalInput to let the user decide how to handle illegal commands. Currently, we simply skip over unrecognized/uninteresting commands while parsing. This can hide potential bugs or lead to confusing error messages. With the new option, skipping is still the default behavior. However, it's also possible to log illegal commands or abort the parse entirely by setting the option to a different value

The idea is to eventually make the Tokenizer strict and always throw an exception. However, we may still have to add more non-standard commands first

# Conflicts:
#	src/org/sosy_lab/java_smt/SolverContextFactory.java
#	src/org/sosy_lab/java_smt/solvers/yices2/Yices2FormulaManager.java
#	src/org/sosy_lab/java_smt/solvers/yices2/Yices2SolverContext.java
@daniel-raffler
Copy link
Copy Markdown
Contributor Author

@baierd Should I still split up the option for parsing/dumping? Or is this fine with you?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Development

Successfully merging this pull request may close these issues.

1 participant