Skip to content

smt2: let fix #3654

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Jan 2, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 0 additions & 11 deletions scripts/delete_failing_smt2_solver_tests
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@ rm Bitfields3/test.desc
rm Empty_struct1/test.desc
rm Endianness4/test.desc
rm Endianness6/test.desc
rm Endianness7/test.desc
rm Float-div2/test.desc
rm Float-div3/test.desc
rm Float-no-simp1/test.desc
Expand Down Expand Up @@ -37,25 +36,19 @@ rm Linking4/test.desc
rm Linking7/test.desc
rm Linking7/member-name-mismatch.desc
rm Malloc23/test.desc
rm Malloc24/test.desc
rm Memory_leak2/test.desc
rm Multi_Dimensional_Array2/test.desc
rm Overflow_Leftshift1/test.desc
rm Overflow_Subtraction1/test.desc
rm Pointer_Arithmetic11/test.desc
rm Pointer_byte_extract2/test.desc
rm Pointer_byte_extract3/test.desc
rm Pointer_byte_extract4/test.desc
rm Pointer_byte_extract5/no-simplify.desc
rm Pointer_byte_extract5/test.desc
rm Pointer_byte_extract7/test.desc
rm Pointer_byte_extract9/test.desc
rm Promotion3/test.desc
rm Quantifiers-assertion/test.desc
rm Quantifiers-assignment/test.desc
rm Quantifiers-invalid-var-range/test.desc
rm Quantifiers-type/test.desc
rm Struct_Bytewise2/test.desc
rm Union_Initialization1/test.desc
rm address_space_size_limit1/test.desc
rm array-function-parameters/test.desc
Expand All @@ -71,20 +64,16 @@ rm byte_update8/test.desc
rm byte_update9/test.desc
rm compact-trace/test.desc
rm dynamic_size1/stack_object.desc
rm equality_through_struct_containing_arrays1/test.desc
rm equality_through_struct_containing_arrays2/test.desc
rm graphml_witness1/test.desc
rm integer-assignments1/test.desc
rm memory_allocation1/test.desc
rm pointer-function-parameters-struct-mutual-recursion/test.desc
rm pointer-function-parameters-struct-simple-recursion/test.desc
rm pointer-function-parameters-struct-simple-recursion-2/test.desc
rm pointer-function-parameters-struct-simple-recursion-3/test.desc
rm scanf1/test.desc
rm stack-trace/test.desc
rm struct6/test.desc
rm struct7/test.desc
rm struct9/test.desc
rm trace-values/trace-values.desc
rm trace_show_function_calls/test.desc
rm union12/test.desc
Expand Down
2 changes: 1 addition & 1 deletion src/solvers/smt2/smt2_conv.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -3611,7 +3611,7 @@ void smt2_convt::convert_with(const with_exprt &expr)
// the member is at the end
out << "(concat ";
convert_expr(value);
out << "((_ extract " << (m.offset-1) << " 0) ?withop))";
out << " ((_ extract " << (m.offset - 1) << " 0) ?withop))";
}
else
{
Expand Down
5 changes: 2 additions & 3 deletions src/solvers/smt2/smt2_parser.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -206,9 +206,8 @@ exprt smt2_parsert::let_expression()
result=let;
}

// remove bindings from id_map
for(const auto &b : bindings)
id_map.erase(b.first);
// we keep these in the id_map in order to retain globally
// unique identifiers

// restore renamings
renaming_map=old_renaming_map;
Expand Down