@@ -399,7 +399,7 @@ void initialize_nondet_string_fields(
399
399
allocate_objects.allocate_automatic_local_object (
400
400
java_int_type (), " tmp_object_factory" );
401
401
const side_effect_expr_nondett nondet_length (length_expr.type (), loc);
402
- code.add (code_assignt (length_expr, nondet_length));
402
+ code.add (code_frontend_assignt (length_expr, nondet_length));
403
403
404
404
// assume (length_expr >= min_nondet_string_length);
405
405
const exprt min_length =
@@ -508,8 +508,8 @@ void java_object_factoryt::gen_nondet_pointer_init(
508
508
// Having created a pointer to object of type replacement_pointer_type
509
509
// we now assign it back to the original pointer with a cast
510
510
// from pointer_type to replacement_pointer_type
511
- assignments.add (
512
- code_assignt ( expr, typecast_exprt (real_pointer_symbol, pointer_type)));
511
+ assignments.add (code_frontend_assignt (
512
+ expr, typecast_exprt (real_pointer_symbol, pointer_type)));
513
513
return ;
514
514
}
515
515
@@ -539,8 +539,8 @@ void java_object_factoryt::gen_nondet_pointer_init(
539
539
{
540
540
if (update_in_place == update_in_placet::NO_UPDATE_IN_PLACE)
541
541
{
542
- assignments.add (
543
- code_assignt{ expr, null_pointer_exprt{pointer_type}, location});
542
+ assignments.add (code_frontend_assignt{
543
+ expr, null_pointer_exprt{pointer_type}, location});
544
544
}
545
545
// Otherwise leave it as it is.
546
546
return ;
@@ -615,7 +615,7 @@ void java_object_factoryt::gen_nondet_pointer_init(
615
615
update_in_placet::NO_UPDATE_IN_PLACE,
616
616
location);
617
617
618
- const code_assignt set_null_inst{
618
+ const code_frontend_assignt set_null_inst{
619
619
expr, null_pointer_exprt{pointer_type}, location};
620
620
621
621
const bool allow_null = depth > object_factory_parameters.min_null_tree_depth ;
@@ -734,7 +734,7 @@ alternate_casest get_string_input_values_code(
734
734
{
735
735
const symbol_exprt s =
736
736
get_or_create_string_literal_symbol (val, symbol_table, true );
737
- cases.push_back (code_assignt (expr, s));
737
+ cases.push_back (code_frontend_assignt (expr, s));
738
738
}
739
739
return cases;
740
740
}
@@ -843,7 +843,7 @@ void java_object_factoryt::gen_nondet_struct_init(
843
843
allocate_objects);
844
844
}
845
845
846
- assignments.add (code_assignt (expr, *initial_object));
846
+ assignments.add (code_frontend_assignt (expr, *initial_object));
847
847
}
848
848
849
849
for (const auto &component : components)
@@ -865,7 +865,7 @@ void java_object_factoryt::gen_nondet_struct_init(
865
865
// which is necessary to support concurrency.
866
866
if (update_in_place == update_in_placet::MUST_UPDATE_IN_PLACE)
867
867
continue ;
868
- code_assignt code (me, from_integer (0 , me.type ()));
868
+ code_frontend_assignt code (me, from_integer (0 , me.type ()));
869
869
code.add_source_location () = location;
870
870
assignments.add (code);
871
871
}
@@ -950,7 +950,7 @@ static code_blockt assume_expr_integral(
950
950
allocate_local_symbol (java_int_type (), " assume_integral_tmp" );
951
951
assignments.add (code_declt (aux_int), location);
952
952
exprt nondet_rhs = side_effect_expr_nondett (java_int_type (), location);
953
- code_assignt aux_assign (aux_int, nondet_rhs);
953
+ code_frontend_assignt aux_assign (aux_int, nondet_rhs);
954
954
aux_assign.add_source_location () = location;
955
955
assignments.add (aux_assign);
956
956
assignments.add (
@@ -1068,7 +1068,7 @@ void java_object_factoryt::gen_nondet_init(
1068
1068
exprt rhs = type.id () == ID_c_bool
1069
1069
? get_nondet_bool (type, location)
1070
1070
: side_effect_expr_nondett (type, location);
1071
- code_assignt assign (expr, rhs);
1071
+ code_frontend_assignt assign (expr, rhs);
1072
1072
assign.add_source_location () = location;
1073
1073
1074
1074
assignments.add (assign);
@@ -1084,7 +1084,7 @@ void java_object_factoryt::gen_nondet_init(
1084
1084
if (auto singleton = interval.as_singleton ())
1085
1085
{
1086
1086
assignments.add (
1087
- code_assignt {expr, from_integer (*singleton, expr.type ())});
1087
+ code_frontend_assignt {expr, from_integer (*singleton, expr.type ())});
1088
1088
}
1089
1089
else
1090
1090
{
@@ -1158,7 +1158,7 @@ static void allocate_nondet_length_array(
1158
1158
java_new_array.copy_to_operands (length_sym_expr);
1159
1159
java_new_array.set (ID_length_upper_bound, max_length_expr);
1160
1160
java_new_array.type ().subtype ().set (ID_element_type, element_type);
1161
- code_assignt assign (lhs, java_new_array);
1161
+ code_frontend_assignt assign (lhs, java_new_array);
1162
1162
assign.add_source_location () = location;
1163
1163
assignments.add (assign);
1164
1164
}
@@ -1204,13 +1204,15 @@ static void array_primitive_init_code(
1204
1204
// *array_data_init = NONDET(TYPE [max_length_expr]);
1205
1205
side_effect_expr_nondett nondet_data (array_type, location);
1206
1206
const dereference_exprt data_pointer_deref{tmp_finite_array_pointer};
1207
- assignments.add (code_assignt (data_pointer_deref, std::move (nondet_data)));
1207
+ assignments.add (
1208
+ code_frontend_assignt (data_pointer_deref, std::move (nondet_data)));
1208
1209
assignments.statements ().back ().add_source_location () = location;
1209
1210
1210
1211
// init_array_expr = *array_data_init;
1211
1212
address_of_exprt tmp_nondet_pointer (
1212
1213
index_exprt (data_pointer_deref, from_integer (0 , java_int_type ())));
1213
- assignments.add (code_assignt (init_array_expr, std::move (tmp_nondet_pointer)));
1214
+ assignments.add (
1215
+ code_frontend_assignt (init_array_expr, std::move (tmp_nondet_pointer)));
1214
1216
assignments.statements ().back ().add_source_location () = location;
1215
1217
}
1216
1218
@@ -1251,7 +1253,7 @@ code_blockt java_object_factoryt::assign_element(
1251
1253
// If we're updating an existing array item, read the existing object that
1252
1254
// we (may) alter:
1253
1255
if (update_in_place != update_in_placet::NO_UPDATE_IN_PLACE)
1254
- assignments.add (code_assignt (init_expr, element));
1256
+ assignments.add (code_frontend_assignt (init_expr, element));
1255
1257
}
1256
1258
1257
1259
// MUST_UPDATE_IN_PLACE only applies to this object.
@@ -1277,7 +1279,7 @@ code_blockt java_object_factoryt::assign_element(
1277
1279
{
1278
1280
// We used a temporary variable to update or initialise an array item;
1279
1281
// now write it into the array:
1280
- assignments.add (code_assignt (element, init_expr));
1282
+ assignments.add (code_frontend_assignt (element, init_expr));
1281
1283
}
1282
1284
return assignments;
1283
1285
}
@@ -1337,7 +1339,7 @@ static void array_loop_init_code(
1337
1339
const symbol_exprt &array_init_symexpr =
1338
1340
allocate_local_symbol (init_array_expr.type (), " array_data_init" );
1339
1341
1340
- code_assignt data_assign (array_init_symexpr, init_array_expr);
1342
+ code_frontend_assignt data_assign (array_init_symexpr, init_array_expr);
1341
1343
data_assign.add_source_location () = location;
1342
1344
assignments.add (data_assign);
1343
1345
@@ -1505,7 +1507,8 @@ bool java_object_factoryt::gen_nondet_enum_init(
1505
1507
1506
1508
const dereference_exprt element_at_index =
1507
1509
array_element_from_pointer (enum_array_expr, index_expr);
1508
- code_assignt enum_assign (expr, typecast_exprt (element_at_index, expr.type ()));
1510
+ code_frontend_assignt enum_assign (
1511
+ expr, typecast_exprt (element_at_index, expr.type ()));
1509
1512
assignments.add (enum_assign);
1510
1513
1511
1514
return true ;
@@ -1520,7 +1523,7 @@ static void assert_type_consistency(const code_blockt &assignments)
1520
1523
{
1521
1524
if (code.get_statement () != ID_assign)
1522
1525
continue ;
1523
- const auto &assignment = to_code_assign (code);
1526
+ const auto &assignment = to_code_frontend_assign (code);
1524
1527
INVARIANT (
1525
1528
assignment.lhs ().type () == assignment.rhs ().type (),
1526
1529
" object factory should produce type-consistent assignments" );
0 commit comments