@@ -409,13 +409,13 @@ void value_set_fit::get_value_set_rec(
409
409
410
410
const typet &type=ns.follow (expr.op0 ().type ());
411
411
412
- DATA_INVARIANT (type.id ()==ID_array ||
413
- type. id ()==ID_incomplete_array ||
414
- type. id ()== " #REF# " ,
415
- " operand 0 of index expression must be an array " );
416
-
417
- get_value_set_rec (expr. op0 (), dest, " [] " +suffix,
418
- original_type, ns, recursion_set );
412
+ if (type.id () == ID_array)
413
+ {
414
+ get_value_set_rec (expr. op0 (), dest, " [] " +suffix ,
415
+ original_type, ns, recursion_set );
416
+ }
417
+ else
418
+ insert (dest, exprt (ID_unknown, original_type) );
419
419
420
420
return ;
421
421
}
@@ -1328,9 +1328,10 @@ void value_set_fit::assign_rec(
1328
1328
1329
1329
assign_rec (typecast_expr.op (), values_rhs, suffix, ns, recursion_set);
1330
1330
}
1331
- else if (lhs.id ()==" zero_string" ||
1332
- lhs.id ()==" is_zero_string" ||
1333
- lhs.id ()==" zero_string_length" )
1331
+ else if (lhs.id () == " zero_string" ||
1332
+ lhs.id () == " is_zero_string" ||
1333
+ lhs.id () == " zero_string_length" ||
1334
+ lhs.id () == ID_address_of)
1334
1335
{
1335
1336
// ignore
1336
1337
}
0 commit comments