Also adds benchmark that triggered this issue.
std::vector<TypeNode> datatypeBlock;
for (const TypeNode& ctn : connectedTypes)
{
- if (stc.isSort())
+ if (ctn.isSort())
{
- d_printer->toStreamCmdDeclareType(out, stc);
+ d_printer->toStreamCmdDeclareType(out, ctn);
}
- else if (stc.isDatatype())
+ else if (ctn.isDatatype())
{
datatypeBlock.push_back(ctn);
}
regress0/datatypes/list-update.smt2
regress0/datatypes/list-update-sat.smt2
regress0/datatypes/model-subterms-min.smt2
+ regress0/datatypes/mutual-rec-param-dt.smt2
regress0/datatypes/mutually-recursive.cvc.smt2
regress0/datatypes/pair-bool-bool.cvc.smt2
regress0/datatypes/pair-real-bool.smt2
--- /dev/null
+
+
+(set-logic ALL)
+(set-option :produce-models true)
+(set-info :status sat)
+(declare-datatypes ( (List 1) (List2 1) ) (
+(par ( X )
+( (cons (head X) (tail (List2 X))) (nil))
+)
+(par ( Y )
+( (cons2 (head2 Y) (tail2 (List Y))) (nil))
+)
+))
+(declare-fun a () (List Int))
+(declare-fun b () (List Int))
+(assert (= (head a) 5))
+(check-sat)