@@ -1206,9 +1206,16 @@ __CPROVER_HIDE:;
1206
1206
}
1207
1207
if (__VERIFIER_nondet___CPROVER_bool ())
1208
1208
{
1209
- // make pointer invalid, empty value set and nondet bit pattern
1210
- __CPROVER_size_t dummy = __VERIFIER_nondet_size ();
1211
- * elem = (void * )dummy ;
1209
+ // in the failure case, make pointer null or pointing to a unique
1210
+ // dummy object of size 0.
1211
+ if (__VERIFIER_nondet___CPROVER_bool ())
1212
+ {
1213
+ * elem = (void * )0 ;
1214
+ }
1215
+ else
1216
+ {
1217
+ * elem = __CPROVER_allocate (0 , 0 );
1218
+ }
1212
1219
return 0 ;
1213
1220
}
1214
1221
void * ptr = __CPROVER_allocate (size , 0 );
@@ -1266,9 +1273,16 @@ __CPROVER_HIDE:;
1266
1273
}
1267
1274
if (__VERIFIER_nondet___CPROVER_bool ())
1268
1275
{
1269
- // make pointer invalid, empty value set and nondet bit pattern
1270
- __CPROVER_size_t dummy = __VERIFIER_nondet_size ();
1271
- * elem = (void * )dummy ;
1276
+ // in the failure case, make pointer null or pointing to a unique
1277
+ // dummy object of size 0.
1278
+ if (__VERIFIER_nondet___CPROVER_bool ())
1279
+ {
1280
+ * elem = (void * )0 ;
1281
+ }
1282
+ else
1283
+ {
1284
+ * elem = __CPROVER_allocate (0 , 0 );
1285
+ }
1272
1286
return 0 ;
1273
1287
}
1274
1288
void * ptr = __CPROVER_allocate (size , 0 );
@@ -1372,9 +1386,16 @@ __CPROVER_HIDE:;
1372
1386
{
1373
1387
if (__VERIFIER_nondet___CPROVER_bool ())
1374
1388
{
1375
- // make pointer invalid, empty value set and nondet bit pattern
1376
- __CPROVER_size_t dummy = __VERIFIER_nondet_size ();
1377
- * ptr = (void * )dummy ;
1389
+ // in the failure case, make pointer null or pointing to a unique
1390
+ // dummy object of size 0.
1391
+ if (__VERIFIER_nondet___CPROVER_bool ())
1392
+ {
1393
+ * ptr = (void * )0 ;
1394
+ }
1395
+ else
1396
+ {
1397
+ * ptr = __CPROVER_allocate (0 , 0 );
1398
+ }
1378
1399
return 0 ;
1379
1400
}
1380
1401
0 commit comments