Skip to content

Commit 2be3344

Browse files
authored
Merge pull request #3654 from diffblue/smt2-let-fix
smt2: let fix
2 parents b1e690c + aae639a commit 2be3344

File tree

3 files changed

+3
-15
lines changed

3 files changed

+3
-15
lines changed

scripts/delete_failing_smt2_solver_tests

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ rm Bitfields3/test.desc
77
rm Empty_struct1/test.desc
88
rm Endianness4/test.desc
99
rm Endianness6/test.desc
10-
rm Endianness7/test.desc
1110
rm Float-div2/test.desc
1211
rm Float-div3/test.desc
1312
rm Float-no-simp1/test.desc
@@ -37,25 +36,19 @@ rm Linking4/test.desc
3736
rm Linking7/test.desc
3837
rm Linking7/member-name-mismatch.desc
3938
rm Malloc23/test.desc
40-
rm Malloc24/test.desc
41-
rm Memory_leak2/test.desc
4239
rm Multi_Dimensional_Array2/test.desc
4340
rm Overflow_Leftshift1/test.desc
4441
rm Overflow_Subtraction1/test.desc
4542
rm Pointer_Arithmetic11/test.desc
4643
rm Pointer_byte_extract2/test.desc
47-
rm Pointer_byte_extract3/test.desc
48-
rm Pointer_byte_extract4/test.desc
4944
rm Pointer_byte_extract5/no-simplify.desc
5045
rm Pointer_byte_extract5/test.desc
51-
rm Pointer_byte_extract7/test.desc
5246
rm Pointer_byte_extract9/test.desc
5347
rm Promotion3/test.desc
5448
rm Quantifiers-assertion/test.desc
5549
rm Quantifiers-assignment/test.desc
5650
rm Quantifiers-invalid-var-range/test.desc
5751
rm Quantifiers-type/test.desc
58-
rm Struct_Bytewise2/test.desc
5952
rm Union_Initialization1/test.desc
6053
rm address_space_size_limit1/test.desc
6154
rm array-function-parameters/test.desc
@@ -71,20 +64,16 @@ rm byte_update8/test.desc
7164
rm byte_update9/test.desc
7265
rm compact-trace/test.desc
7366
rm dynamic_size1/stack_object.desc
74-
rm equality_through_struct_containing_arrays1/test.desc
75-
rm equality_through_struct_containing_arrays2/test.desc
7667
rm graphml_witness1/test.desc
7768
rm integer-assignments1/test.desc
7869
rm memory_allocation1/test.desc
7970
rm pointer-function-parameters-struct-mutual-recursion/test.desc
8071
rm pointer-function-parameters-struct-simple-recursion/test.desc
8172
rm pointer-function-parameters-struct-simple-recursion-2/test.desc
82-
rm pointer-function-parameters-struct-simple-recursion-3/test.desc
8373
rm scanf1/test.desc
8474
rm stack-trace/test.desc
8575
rm struct6/test.desc
8676
rm struct7/test.desc
87-
rm struct9/test.desc
8877
rm trace-values/trace-values.desc
8978
rm trace_show_function_calls/test.desc
9079
rm union12/test.desc

src/solvers/smt2/smt2_conv.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3611,7 +3611,7 @@ void smt2_convt::convert_with(const with_exprt &expr)
36113611
// the member is at the end
36123612
out << "(concat ";
36133613
convert_expr(value);
3614-
out << "((_ extract " << (m.offset-1) << " 0) ?withop))";
3614+
out << " ((_ extract " << (m.offset - 1) << " 0) ?withop))";
36153615
}
36163616
else
36173617
{

src/solvers/smt2/smt2_parser.cpp

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -206,9 +206,8 @@ exprt smt2_parsert::let_expression()
206206
result=let;
207207
}
208208

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

213212
// restore renamings
214213
renaming_map=old_renaming_map;

0 commit comments

Comments
 (0)